De acordo com as necessidades do projeto, websockets devem ser usados para o push de dados, então o SignalR deve ser usado, pois o SignalR requer o framework .net 4.5
Basta clicar com o botão direito nos atributos do projeto e mudar para .net 4.5, e tudo fica normal quando você roda novamente.
Instalação Nuget:
A instalação é a seguinte:
Gerenciador de pacotes versão do host do console 4.0.0.2323 Digite "get-help NuGet" para ver todos os comandos NuGet disponíveis. PM> Pacote de Instalação Microsoft.AspNet.SignalR Estão sendo feitas tentativas para coletar e mirar ". NETFramework, Version=v4.5"WWW_ITSVSE_COM. Web "Informações de dependência sobre o pacote "Microsoft.AspNet.SignalR.2.2.2" Levou 24,53 segundos para coletar informações de dependência Tentando resolver dependências do pacote "Microsoft.AspNet.SignalR.2.2.2" com o DependencyBehavior como "Lowest" Uma ou mais restrições de dependência de pacotes não resolvidas são detectadas no arquivo packages.config existente. Todas as restrições de dependência devem ser resolvidas para adicionar ou atualizar pacotes. Essa mensagem pode ser ignorada se esses pacotes estiverem sendo atualizados, e se não forem atualizados, o erro pode impedir a operação atual do pacote: 'DotNetOpenAuth.Core 4.1.4.12333 Restrições: Microsoft.Net.Http', 'Microsoft.AspNet.WebApi.Client 4.0.20710 Restrições: Microsoft.Net.Http (>=). 2.0.20710 & < 2.1.0)', 'Microsoft.AspNet.WebApi.OData 4.0.0 restrições: Microsoft.Net.Http (>= 2.0.20710 & < 2.1.0)' Analisar informações de dependência leva 0 ms Operação de análise para instalar o pacote "Microsoft.AspNet.SignalR.2.2.2" Resolvido a operação para instalar o pacote "Microsoft.AspNet.SignalR.2.2.2" Recuperar o pacote "Microsoft.AspNet.SignalR 2.2.2" de "nuget.org" Recuperar o pacote "Microsoft.AspNet.SignalR.Core 2.2.2" de "nuget.org" Recuperar o pacote "Microsoft.AspNet.SignalR.JS 2.2.2" de "nuget.org" Recuperar o pacote "Microsoft.AspNet.SignalR.SystemWeb 2.2.2" de "nuget.org" Recuperar o pacote "Microsoft.Owin 2.1.0" de "nuget.org" Recuperar o pacote "Microsoft.Owin.Host.SystemWeb 2.1.0" de "nuget.org" Recuperar o pacote "Microsoft.Owin.Security 2.1.0" de "nuget.org" Recuperar o pacote "Owin 1.0.0" de "nuget.org" VAI https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg VÁ https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg VÁ https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg VAI https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg VAI https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg VAI https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg VAI https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg VAI https://api.nuget.org/packages/owin.1.0.0.nupkg OK https://api.nuget.org/packages/microsoft.aspnet.signalr.systemweb.2.2.2.nupkg 150 ms OK https://api.nuget.org/packages/microsoft.aspnet.signalr.core.2.2.2.nupkg 152 ms Microsoft.AspNet.SignalR.SystemWeb 2.2.2 está sendo instalado. Microsoft.AspNet.SignalR.Core 2.2.2 está sendo instalado. OK https://api.nuget.org/packages/microsoft.owin.2.1.0.nupkg 436 ms O Microsoft.Owin 2.1.0 está sendo instalado. OK https://api.nuget.org/packages/microsoft.aspnet.signalr.js.2.2.2.nupkg 3705 ms Microsoft.AspNet.SignalR.JS 2.2.2 está sendo instalado. OK https://api.nuget.org/packages/microsoft.aspnet.signalr.2.2.2.nupkg 4080 ms Microsoft.AspNet.SignalR 2.2.2 está sendo instalado. OK https://api.nuget.org/packages/microsoft.owin.security.2.1.0.nupkg 4080 ms O Microsoft.Owin.Security 2.1.0 está sendo instalado. OK https://api.nuget.org/packages/microsoft.owin.host.systemweb.2.1.0.nupkg 4294 ms Microsoft.Owin.Host.SystemWeb 2.1.0 está sendo instalado. Adicionando o pacote "Microsoft.AspNet.SignalR.JS.2.2.2" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.AspNet.SignalR.JS.2.2.2" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionado o pacote "Microsoft.AspNet.SignalR.JS.2.2.2" ao "packages.config" "Microsoft.AspNet.SignalR.JS 2.2.2" foi instalado com sucesso em WWW_ITSVSE_COM. Web OK https://api.nuget.org/packages/owin.1.0.0.nupkg 6801 milissegundos O Owin 1.0.0 está sendo instalado. Adicionando o pacote "Owin.1.0.0" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Owin.1.0.0" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Owin.1.0.0" foi adicionado ao "packages.config" "Owin 1.0.0" foi instalado com sucesso em WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.Owin.2.1.0" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.Owin.2.1.0" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionado o pacote "Microsoft.Owin.2.1.0" ao "packages.config" "Microsoft.Owin 2.1.0" foi instalado com sucesso em WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.Owin.Host.SystemWeb.2.1.0" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.Owin.Host.SystemWeb.2.1.0" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionado o pacote "Microsoft.Owin.Host.SystemWeb.2.1.0" ao "packages.config" "Microsoft.Owin.Host.SystemWeb 2.1.0" foi instalado com sucesso em WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.Owin.Security.2.1.0" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.Owin.Security.2.1.0" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionado o pacote "Microsoft.Owin.Security.2.1.0" ao "packages.config" "Microsoft.Owin.Security 2.1.0" foi instalado com sucesso em WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.AspNet.SignalR.Core.2.2.2" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.AspNet.SignalR.Core.2.2.2" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionado o pacote "Microsoft.AspNet.SignalR.Core.2.2.2" ao packages.config "Microsoft.AspNet.SignalR.Core 2.2.2" foi instalado com sucesso para WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.AspNet.SignalR.SystemWeb.2.2.2" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.AspNet.SignalR.SystemWeb.2.2.2" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" Adicionou o pacote "Microsoft.AspNet.SignalR.SystemWeb.2.2.2" ao "packages.config" "Microsoft.AspNet.SignalR.SystemWeb 2.2.2" foi instalado com sucesso em WWW_ITSVSE_COM. Web Adicionando o pacote "Microsoft.AspNet.SignalR.2.2.2" à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.AspNet.SignalR.2.2.2" foi adicionado à pasta "C:\project\company\WWW_ITSVSE_COM\packages" O pacote "Microsoft.AspNet.SignalR.2.2.2" foi adicionado ao "packages.config" "Microsoft.AspNet.SignalR 2.2.2" foi instalado com sucesso em WWW_ITSVSE_COM. Web A operação do nuget levou 18,26 seg Tempo decorrido: 00:00:45.5513744 PM> Agora que o SignalR está instalado, como eu registro o jogo? Por exemplo, nosso controlador ou algo assim, e então, penso em arquivos Global.asax.cs,
Baidu analisou e descobriu que a ordem de registro era a seguinte:
Um erro é encontrado com o seguinte erro:
O erro CS0619 "SignalRRouteExtensions.MapHubs(RouteCollection)" está obsoleto: "Use IAppBuilder.MapSignalR em uma classe de inicialização Owin. Veja http://go.microsoft.com/fwlink/?LinkId=320578 para mais detalhes." WWW_ITSVSE_COM. Web C:\projeto\empresa\WWW_ITSVSE_COM\WWW_ITSVSE_COM. Web\Global.asax.cs 30 ativo
Versões do SignalR, a partir da 1.2.2 e incluindo a 2.0 e superiores, são todas iniciadas usando middleware OWIN.
Então, depois de instalar o signalR2.0 com o nuget,Não comece a rota no application_start de Globalaxac,
Em vez disso, você deve criar uma classe Startup como classe startup.
Depois, criamos uma nova classe Startup no diretório raiz do projeto, e o código é o seguinte:
XXX representa o nome do nosso projeto e, ao reiniciar, é constatado que nenhum erro é reportado!!
Na verdade, se não criarmos uma nova classe de Inicialização, o seguinte erro será reportado após o início, o que só descobri depois.
Os seguintes erros ocorreram ao tentar carregar o app. - Nenhum assembly encontrado contendo um OwinStartupAttribut. - Nenhum assembly encontrado contendo um Startup ou [AssemblyName]. Classe de startup. Para desativar a descoberta de inicialização do OWIN, adicione a configuração de appSettings owin:AutomaticAppStartup com o valor "false" no seu web.config. Para especificar o Assembly, Classe ou Método de inicialização OWIN, adicione o appSetting owin:AppStartup com a classe de inicialização totalmente qualificada ou nome do método de configuração no seu web.config.
|