В соответствии с потребностями проекта веб-сокеты должны использоваться для подачи данных, поэтому следует использовать SignalR, поскольку SignalR требует фреймворка .net 4.5
Просто кликните правой кнопкой мыши по атрибутам проекта и измените его на .NET 4.5, и при повторном запуске всё будет нормально.
Установка NUGET:
Инсталляция выглядит следующим образом:
Host консоли Package Manager версии 4.0.0.2323 Введите «get-help NuGet», чтобы увидеть все доступные команды NuGet. PM> Install-Package Microsoft.AspNet.SignalR Предпринимаются попытки собрать и нацелиться на них». NETFramework, Version=v4.5"WWW_ITSVSE_COM. Web «Информация о зависимости пакета «Microsoft.AspNet.SignalR.2.2.2» Сбор информации о зависимости занял 24,53 секунды Пытаюсь разрешить зависимости пакета "Microsoft.AspNet.SignalR.2.2.2" с DependencyBehavior как "Самый низкий" В существующем файле packages.config обнаруживаются одно или несколько нерешённых ограничений зависимостей пакетов. Все ограничения зависимостей должны быть разрешены для добавления или обновления пакетов. Это сообщение может игнорировать при обновлении этих пакетов, и если они не обновляются, ошибка может заблокировать текущую работу пакета: 'DotNetOpenAuth.Core 4.1.4.12333 Constraints: Microsoft.Net.Http', 'Microsoft.AspNet.WebApi.Client 4.0.20710 Constraints: Microsoft.Net.Http (>=). 2.0.20710 && < 2.1.0)', 'Microsoft.AspNet.WebApi.OData 4.0.0 constraints: Microsoft.Net.Http (>= 2.0.20710 && < 2.1.0)' Разбор информации о зависимости занимает 0 мс Операция разбора для установки пакета "Microsoft.AspNet.SignalR.2.2.2" Разрешено операцию установки пакета "Microsoft.AspNet.SignalR.2.2.2" Получить пакет "Microsoft.AspNet.SignalR 2.2.2" из "nuget.org" Получить пакет "Microsoft.AspNet.SignalR.Core 2.2.2" из "nuget.org" Получить пакет "Microsoft.AspNet.SignalR.JS 2.2.2" из "nuget.org" Получить пакет «Microsoft.AspNet.SignalR.SystemWeb 2.2.2» из «nuget.org» Получить пакет "Microsoft.Owin 2.1.0" из "nuget.org" Получить пакет "Microsoft.Owin.Host.SystemWeb 2.1.0" из "nuget.org" Получить пакет "Microsoft.Owin.Security 2.1.0" из "nuget.org" Получить пакет «Owin 1.0.0» из «nuget.org» ИДИ https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg ЗАБИРАЙТЕСЬ https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg ИДИ https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg ИДИ https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg ИДИ https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg ИДИ https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg ИДИ https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg ИДИ https://api.nuget.org/packages/owin.1.0.0.nupkg Хорошо, https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg 150 мс Хорошо https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg 152 мс Устанавливается Microsoft.AspNet.SignalR.SystemWeb 2.2.2. Устанавливается Microsoft.AspNet.SignalR.Core 2.2.2. Хорошо https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg 436 мс Устанавливается Microsoft.Owin 2.1.0. Ок, https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg 3705 мс Microsoft.AspNet.SignalR.JS версия 2.2.2 устанавливается. Хорошо, https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg 4080 мс Устанавливается Microsoft.AspNet.SignalR 2.2.2. Хорошо https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg 4080 мс Устанавливается версия Microsoft.Owin.Security 2.1.0. ОК https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg 4294 мс Устанавливается Microsoft.Owin.Host.SystemWeb 2.1.0. Добавление пакета "Microsoft.AspNet.SignalR.JS.2.2.2" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет "Microsoft.AspNet.SignalR.JS.2.2.2" был добавлен в папку "C:\project\company\WWW_ITSVSE_COM\packages" Добавлен пакет "Microsoft.AspNet.SignalR.JS.2.2.2" в "packages.config" «Microsoft.AspNet.SignalR.JS 2.2.2» успешно установлена на WWW_ITSVSE_COM. Веб Хорошо, https://api.nuget.org/packages/owin.1.0.0.nupkg 6801 миллисекунды Оуин 1.0.0 устанавливается. Добавление пакета "Owin.1.0.0" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет "Owin.1.0.0" был добавлен в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет "Owin.1.0.0" был добавлен в "packages.config" «Owin 1.0.0» успешно установлена на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.Owin.2.1.0" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет "Microsoft.Owin.2.1.0" был добавлен в папку "C:\project\company\WWW_ITSVSE_COM\packages" Добавлен пакет "Microsoft.Owin.2.1.0" в "packages.config" «Microsoft.Owin 2.1.0» успешно установлен на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.Owin.Host.SystemWeb.2.1.0" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет «Microsoft.Owin.Host.SystemWeb.2.1.0» был добавлен в папку «C:\project\company\WWW_ITSVSE_COM\packages» Добавлен пакет "Microsoft.Owin.Host.SystemWeb.2.1.0" в "packages.config" «Microsoft.Owin.Host.SystemWeb 2.1.0» успешно установлен на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.Owin.Security.2.1.0" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет "Microsoft.Owin.Security.2.1.0" был добавлен в папку "C:\project\company\WWW_ITSVSE_COM\packages" Добавлен пакет "Microsoft.Owin.Security.2.1.0" в "packages.config" «Microsoft.Owin.Security 2.1.0» успешно установлен на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.AspNet.SignalR.Core.2.2.2" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет «Microsoft.AspNet.SignalR.Core.2.2.2» был добавлен в папку «C:\project\company\WWW_ITSVSE_COM\packages» Добавлен пакет "Microsoft.AspNet.SignalR.Core.2.2.2" в packages.config «Microsoft.AspNet.SignalR.Core 2.2.2» успешно установлен на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.AspNet.SignalR.SystemWeb.2.2.2" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет «Microsoft.AspNet.SignalR.SystemWeb.2.2.2» был добавлен в папку «C:\project\company\WWW_ITSVSE_COM\packages» Добавлен пакет "Microsoft.AspNet.SignalR.SystemWeb.2.2.2" в "packages.config" «Microsoft.AspNet.SignalR.SystemWeb 2.2.2» успешно установлен на WWW_ITSVSE_COM. Веб Добавление пакета "Microsoft.AspNet.SignalR.2.2.2" в папку "C:\project\company\WWW_ITSVSE_COM\packages" Пакет «Microsoft.AspNet.SignalR.2.2.2» был добавлен в папку «C:\project\company\WWW_ITSVSE_COM\packages» Пакет «Microsoft.AspNet.SignalR.2.2.2» был добавлен в «packages.config» «Microsoft.AspNet.SignalR 2.2.2» успешно установлен на WWW_ITSVSE_COM. Веб Операция с нугетом заняла 18,26 секунды Время: 00:00:45.5513744 PM> Теперь, когда SignalR установлен, как мне зарегистрироваться? Например, наш контроллер или что-то подобное, а потом я думаю о Global.asax.cs файлах,
Baidu посмотрел и обнаружил, что порядок регистрации был следующим:
Обнаружена ошибка со следующей ошибкой:
Ошибка CS0619 "SignalRRouteExtensions.MapHubs(RouteCollection)" устарела: "Use IAppBuilder.MapSignalR в классе Owin Startup. Подробности смотрите http://go.microsoft.com/fwlink/?LinkId=320578.» WWW_ITSVSE_COM. Web C:\проект\компания\WWW_ITSVSE_COM\WWW_ITSVSE_COM. Web\Global.asax.cs 30 активен
Версии SignalR, начиная с 1.2.2 и включая версии 2.0 и выше, все начинаются с использованием промежуточного программного обеспечения OWIN.
Итак, после установки signalR2.0 с nuget,Не начинайте маршрут в application_start Globalaxac,
Вместо этого стоит построить класс Startup как стартаповый класс.
Затем создаём новый класс Startup в корневом каталоге проекта, и код выглядит следующим образом:
XXX обозначает название нашего проекта, и при перезапуске ошибки не сообщается!!
На самом деле, если мы не создадим новый класс Startup, после запуска будет сообщена следующая ошибка, о которой я узнал только позже.
При попытке загрузки приложения произошли следующие ошибки. - Не найдена сборка, содержащая атрибут OwinStartup. - Не найдено ассемблер, содержащего Startup или [AssemblyName]. Стартап-класс. Чтобы отключить обнаружение при запуске OWIN, добавьте appSetting owin:AutomaticAppStartup со значением «false» в web.config. Чтобы указать ассемблер, класс или метод старта OWIN, добавьте appSetting owin:AppStartup с полностью квалифицированным классом запуска или методом конфигурации в вашем web.config.
|