SignalR 2.0.2和Owin 2.0.0依赖冲突

neo*_*112 29 .net c# asp.net signalr owin

我正在努力让SignalR在个人账户的MVC5项目中工作.

MVC项目默认为Owin 2.0.0,所有Owin.*组件也是2.0.0.

所以我使用NuGet获取所有SignalR包,它自动解决了依赖性并下载了v 2.0.2.

该项目在启动时抛出错误,并显示以下消息:

无法加载文件或程序集'Microsoft.Owin,Version = 2.0.1.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'

我也尝试将Owin升级到2.1.0,但这也没有帮助.

有没有人遇到同样的问题,解决方案是什么?

Aki*_*oto 49

您可以将此引用更新为我找到的最新版本(现在是2.1.0):

Install-Package Microsoft.Owin -Version 2.1.0
Install-Package Microsoft.Owin.Security -Version 2.1.0
Run Code Online (Sandbox Code Playgroud)

并确保您的Web.config具有版本2.1.0的这些绑定重定向:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

或者您可以将此引用更新到2.0.1版:

Install-Package Microsoft.Owin -Version 2.0.1
Install-Package Microsoft.Owin.Security -Version 2.0.1
Run Code Online (Sandbox Code Playgroud)

并确保您的Web.config具有版本2.0.1的这些绑定重定向:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.1.0" newVersion="2.0.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.1.0" newVersion="2.0.1.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)