SignalR не работает в ASP.Net 5 RC-1
Я не могу заставить SignalR 3 работать над обновлением ASP.Net 5 RC-1 с Beta8. Я попробовал последний пакет RC1 для SignalR, но имел следующую проблему. Я попробовал пакет "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1-15810"
services.AddSignalR();
вызывает следующую ошибку:
Тип "IServiceCollection" определяется в сборке, которая не является ссылки. Вы должны добавить ссылку на сборку "Microsoft.Extensions.DependencyInjection.Abstractions, Версия = 1.0.0.0, Культура = нейтраль, PublicKeyToken = null '.
и app.UseSignalR();
вызывает следующее:
Тип "IApplicationBuilder" определен в сборке, которая не является ссылки. Вы должны добавить ссылку на сборку 'Microsoft.AspNet.Http.Abstractions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = NULL".
Когда я переключаюсь на пакет "Microsoft.AspNet.SignalR.Server": "3.0.0-rc2-15909"
, я получаю ошибку времени выполнения:
Исключение типа "System.TypeLoadException" произошло в mscorlib.dll, но не был обработан в коде пользователя
Дополнительная информация: Не удалось загрузить тип "Microsoft.AspNet.Http.RequestDelegate" из сборки 'Microsoft.AspNet.Http.Abstractions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = adb9793829ddae60'.
Ответы
Ответ 1
Я только что протестировал это, и это похоже на ссылку aspnetmaster myget feed, хотя это не упоминается в установочные документы.
До включения aspnetmaster я мог разрешить только Microsoft.AspNet.SignalR.Server 3.0.0-rc1-15810
либо напрямую, либо указав rc1-*
, который не строится против rc1-final
. Включение aspnetmaster дает доступ к rc1-final
.
Если вы используете Visual Studio 2015, откройте "Инструменты" > "Параметры" > "Диспетчер пакетов Nuget" > "Источники пакетов" и добавьте новый канал, который вы хотите, но с исходным кодом https://www.myget.org/F/aspnetmaster/api/v3/index.json
.
Если вы не используете VS2015 или не хотите редактировать свою общую конфигурацию, добавьте/отредактируйте NuGet.config в корневой каталог вашего решения, чтобы включить источник пакета следующим образом:
<?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>
Ответ 2
Используйте источники MyGet для "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1-final"
Вот ответ, который может быть полезен:
Не удается найти Microsoft.AspNet.SignalR.Server 3.0.0-beta7
Ответ 3
Для всех, кто сейчас просматривает эту страницу, фид aspnetmaster удалил "Microsoft.AspNet.SignalR.Server": "3.0.0-rc1-final"