SignalR需要Owin启动类,但是我的应用程序可以使用Global.asax类。

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


如果添加启动类,我的asp MVC项目将有两个启动类(全局和启动),可以吗?还是只应应用其中之一并将我的全局课程移至启动课程?

最佳答案

您可以标记启动时Owin自动使用程序集中的哪个类。

在我的示例中,我在Startup中声明了它,并使用OwinStartup指向了它
例如

using Microsoft.AspNet.SignalR;
using Microsoft.Owin;
using System.Net;
[assembly: OwinStartup(typeof(YourProject.Startup))]


namespace YourProject
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            var hubConfiguration = new HubConfiguration
            {
                EnableDetailedErrors = true
            };
            app.MapSignalR(hubConfiguration);
        }
    }
}


如果使用的是Owin,则必须使用Startup类而不是Global.asax

关于c# - 如何在ASP MVC中使用Global.asax而非Startup.cs配置SignalR?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56660226/

10-12 22:37