Відповідно до потреб проєкту, вебсокети слід використовувати для push-передачі даних, тому слід застосовувати SignalR, оскільки SignalR потребує фреймворку .net 4.5
Просто клацніть правою кнопкою миші на атрибути проєкту і змініть його на .NET 4.5, і все буде нормально, коли ви знову запускаєте.
Встановлення NuGet:
Інсталяція виглядає так:
Пакетний менеджер консолі хост версії 4.0.0.2323 Введіть «get-help NuGet», щоб побачити всі доступні команди NuGet. PM> Install-Package Microsoft.AspNet.SignalR Намагаються зібрати та націлитися на це». NETFramework, Version=v4.5"WWW_ITSVSE_COM. Веб «Інформація про залежності про пакет «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 мілісекунду Встановлюється версія Owin 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)" застаріла: "Використовуйте IAppBuilder.MapSignalR у класі запуску Owin. Дивіться http://go.microsoft.com/fwlink/?LinkId=320578 для детальнішої інформації.» WWW_ITSVSE_COM. Web C:\project\company\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 або [AssemblName]. Стартап-клас. Щоб вимкнути OWIN launch discovery, додайте appSetting owin:AutomaticAppStartup зі значенням "false" у вашій web.config. Щоб визначити асемблер, клас або метод для OWIN startup, додайте appSetting owin:AppStartup з повністю кваліфікованим класом запуску або назвою методу конфігурації у вашому web.config.
|