Routes 无法在信号机2.0.0中注册路由

Routes 无法在信号机2.0.0中注册路由,routes,signalr,owin,Routes,Signalr,Owin,我决定使用最新版本的signalr,但我面临一些问题。首先,登记路线的方式已经完全改变;所以我试着按照这个链接所建议的方式来做 问题是尽管我补充说 <appSettings> <add key="owin:AppStartup" value="xxx.Startup, App_Code"/> </appSettings> 对于web.config,根本不调用配置。有人知道我做错了什么吗?这是一个网站吗?如果这是一个网站,那么该网站的程序集将动态生

我决定使用最新版本的signalr,但我面临一些问题。首先,登记路线的方式已经完全改变;所以我试着按照这个链接所建议的方式来做

问题是尽管我补充说

<appSettings>
    <add key="owin:AppStartup" value="xxx.Startup, App_Code"/>
</appSettings>


对于web.config,根本不调用
配置
。有人知道我做错了什么吗?

这是一个网站吗?如果这是一个网站,那么该网站的程序集将动态生成,因此您无法像这样计算出启动类的完全限定名。相反,试着像这样在代码中添加一个程序集级属性,看看是否调用了Startup.Configuration

[组装:OwinStartup(类型(启动))]

解决方案

<appSettings>
    <add key="owin:AppStartup" value="MyNameSpace.Startup, MyNameSpace" />
    <add key="owin:AutomaticAppStartup" value="true" />
</appSettings>

<system.web>
<httpHandlers>
  <add verb="*" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb"/>
</httpHandlers>
</system.web>

<system.webServer>
<handlers>
  <add name="Owin" verb="*" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb"/>
</handlers>
</system.webServer>

我能够通过

  • 删除对旧版本SignalR的所有引用,即nuget卸载库并重新检查/bin

  • 通过软件包管理器控制台安装了SignalR 2.0.0-beta2
    安装软件包Microsoft.AspNet.SignalR-Pre

  • 遵循ops中概述的1.x到2.0迁移中的步骤

  • 最重要的是更改项目配置以使用本地IIS Web服务器而不是Visual Studio Developer server(Cassini)。


更多信息在我发布的问题/答案中

对于我来说,答案是缺少此DLL:

Microsoft.Owin.Host.SystemWeb.dll

我的构建过程忽略了它。似乎它需要出现在Asp.Net站点的
bin
文件夹中,才能调用
配置
方法。

默认情况下,它将搜索名为Startup的文件;所以我唯一要做的就是在
程序集名称.Startup
名称空间下创建一个Startup类


名称空间应遵循上述模式,以便能够找到启动类

,您需要显示更多代码。OwinStartup在beta 2中不存在