SignalR without OWIN

。_饼干妹妹 提交于 2020-01-11 05:30:10

问题


I'm participating in the ASP MVC project.

I want to use SignalR in the project but I don't want to use OWIN lib.

As I understand, SignalR is registered in the application using this piece of code:

public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        app.MapSignalR();
    }
}

How can I modify this to remove the dependency to OWIN?

I would like to use approach similar to RouteConfig.RegisterRoutes(RouteTable.Routes);


回答1:


First be sure to Get-Package within the Package Manager Console and remove all previous installments Uninstall-Package [Id] -RemoveDependencies as this should give you a clean slate.

What worked for me without assembly nor dependency issues was using NuGet to install Microsoft.AspNet.SignalR Version 1.1.4 into your App and DataAccess. Then add the following to your Global.asax file:

// Add this Library for MapHubs extension
using System.Web.Routing;

protected void Application_Start()
{
// This registers the default hubs route: ~signalr
// Simply add the line below WITHIN this function
RouteTable.Routes.MapHubs();
}

[Did this using Visual Studios 2015 Enterprise on 10/29/2015]




回答2:


If you don't want the owin lib you can use SignalR 1.x.

protected void Application_Start()
{
    RouteTable.Routes.MapHubs();
}



回答3:


I was able to do it following this Microsoft documentation: https://docs.microsoft.com/en-us/aspnet/core/signalr/hubs?view=aspnetcore-2.1

Their sample startup class is located here: https://github.com/aspnet/AspNetCore.Docs/blob/master/aspnetcore/signalr/hubs/sample/Startup.cs

public void ConfigureServices(IServiceCollection services)
{
   // other configure code
   // ...

   services.AddSignalR();
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
   // other configure code
   // ...

   app.UseSignalR(route =>
   {
      route.MapHub<ChatHub>("/chathub");
   });
}


来源:https://stackoverflow.com/questions/26273700/signalr-without-owin

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!