【问题标题】:SignalR HubConnection.StartAsync exception: GetStreamItemType in Microsoft.AspNetCore.SignalR.Client.Core, v1.1.0.0 does not have implementationSignalR HubConnection.StartAsync 异常:Microsoft.AspNetCore.SignalR.Client.Core 中的 GetStreamItemType,v1.1.0.0 没有实现
【发布时间】:2019-06-20 13:06:28
【问题描述】:

使用 .Net Core Signal R、Azure SignalR。以前可以工作的代码。停止工作。

等待 MyHubConnection.StartAsync() 失败;

抛出异常 System.TypeLoadException:来自程序集“Microsoft.AspNetCore.SignalR.Client.Core,版本=1.1.0.0,文化=中性,PublicKeyToken=adb9793829ddae60”的“ConnectionState”类型中的“方法“GetStreamItemType”没有实施。'

Microsoft.AspNetCore.SignalR.Client v 1.1.0 Microsoft.Azure.SignalR 1.0.7

如何解决这个问题?

谢谢!

亚当·莱弗特 www.leffert.com

【问题讨论】:

    标签: c# signalr azure-signalr


    【解决方案1】:

    如果其他人遇到这个问题,我会在这里发布答案。

    我能够通过将所有 SignalR 和相关的 NUGet 包更新到它们的 3.x 预发布版本来解决这个问题。

    【讨论】:

      【解决方案2】:

      我最近将一个 .net core 2.2.x 应用程序迁移到了 framework 3.1。我遇到了同样的问题。问题是 Microsoft.AspNetCore.SignalR 和 Microsoft.AspNetCore.SignalR.Client 之间的版本不匹配。

      要正常工作,服务器必须有 SignalR 1.1.0

      https://www.nuget.org/packages/Microsoft.AspNetCore.SignalR/1.1.0

      就客户端而言,它必须是最新的,即使前一个仍然有效:

      https://www.nuget.org/packages/Microsoft.AspNetCore.SignalR.Client/3.1.1

      客户端和服务器的其他组合不起作用或它们有一些意外行为。

      【讨论】:

        【解决方案3】:

        NET 5 控制台应用的解决方案就是使用 ASP.NET 5 的元引用。

        打开您的项目并添加此元引用(不要忘记删除旧的 ASP.NET 引用):

        <ItemGroup>
            <FrameworkReference Include="Microsoft.AspNetCore.App" />
        </ItemGroup>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-06-17
          • 2019-08-08
          相关资源
          最近更新 更多