2015-11-23 15 views
12

Tôi dường như không nhận được SignalR 3 hoạt động trên ASP .Net 5 RC-1 nâng cấp từ Beta8. Tôi đã thử gói RC1 mới nhất cho SignalR nhưng có vấn đề sau đây. Tôi đã thử các gói "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1-15810"SignalR không hoạt động trong ASP .Net 5 RC-1

services.AddSignalR(); 

đang gây ra các lỗi sau:

The type 'IServiceCollection' is defined in an assembly that is not referenced. You must add a reference to assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

app.UseSignalR();

gây ra điều này một:

The type 'IApplicationBuilder' is defined in an assembly that is not referenced. You must add a reference to assembly 'Microsoft.AspNet.Http.Abstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

Khi tôi chuyển sang gói "Microsoft.AspNet.SignalR.Server": "3.0.0-rc2-15909" Tôi gặp lỗi thời gian chạy:

An exception of type 'System.TypeLoadException' occurred in mscorlib.dll but was not handled in user code

Additional information: Could not load type 'Microsoft.AspNet.Http.RequestDelegate' from assembly 'Microsoft.AspNet.Http.Abstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.

+0

SignalR không được hỗ trợ cho ASP .Net 5 v1. – Tratcher

+0

@Tratcher về [this] (https://github.com/aspnet/SignalR-Server). Ngoài ra có vẻ như [this] (https://github.com/aspnet/BugTracker) đang sử dụng nó. –

+1

@Truy cập nó chắc chắn được hỗ trợ. Các câu trả lời bên dưới đã hiệu quả với tôi và tôi đã sử dụng nó với beta 8 trong vài tuần qua. – Tjaart

Trả lời

33

tôi đã chỉ thử nghiệm này, và có vẻ như một tham chiếu đến aspnetmaster myget feed là bắt buộc, mặc dù điều này không được đề cập trong installation docs.

Trước khi bao gồm aspnetmaster tôi chỉ có thể giải quyết Microsoft.AspNet.SignalR.Server 3.0.0-rc1-15810 hoặc trực tiếp hoặc bằng cách chỉ định rc1-*, không xây dựng chống lại rc1-final. Bao gồm aspnetmaster cho phép truy cập vào rc1-final.

Nếu bạn đang sử dụng Visual Studio 2015, hãy đi tới Công cụ> Tùy chọn> Trình quản lý gói Nuget> Nguồn gói và thêm nguồn cấp dữ liệu mới được gọi là bất cứ điều gì bạn thích nhưng với nguồn được đặt thành https://www.myget.org/F/aspnetmaster/api/v3/index.json.

Nếu bạn không sử dụng VS2015 hoặc bạn không muốn chỉnh sửa cấu hình trên toàn máy, hãy thêm/chỉnh sửa NuGet.config trong thư mục gốc của giải pháp để bao gồm nguồn gói như sau;

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <packageSources> 
    <add key="aspnetmaster" value="https://www.myget.org/F/aspnetmaster/api/v3/index.json" /> 
    </packageSources> 
</configuration> 
+0

Cảm ơn.Tôi nghĩ rằng nó có thể là một nguồn gói nhưng không thể tìm thấy cái nào. – Tjaart

5

nguồn Sử dụng MyGet cho "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1 kết"

câu trả lời ở đây liên quan, có thể hữu ích: Can't find Microsoft.AspNet.SignalR.Server 3.0.0-beta7

+0

bạn có thể giải thích ở đây không? – manetsus

+2

Bạn cần thêm nguồn cấp dữ liệu aspnetmaster vào các nguồn Nuget của mình. Nguồn là ** https: //www.myget.org/F/aspnetmaster/api/v3/index.json** (Trong Visual Studio nhấp - ** Công cụ => Tùy chọn => Trình quản lý gói Nuget = > Nguồn gói **). Sau đó, bạn sẽ có thể viết và giải quyết '" Microsoft.AspNet.SignalR.Server ":" 3.0.0-rc1-final "' trong tệp project.json của bạn. –

+1

Ở đây có nghĩa là trong câu trả lời của bạn, không có trong nhận xét. Hãy nhớ nó cho tương lai. – manetsus

0

Đối với những ai đang xem trang này ngay bây giờ, thức ăn aspnetmaster đã loại bỏ "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1 kết"

Các vấn đề liên quan