【发布时间】:2019-12-26 16:24:17
【问题描述】:
我最近回到了使用 SignalR 的旧 .Net Core 应用程序。
我认为当时唯一可用于 .Net Core 应用程序的 SignalR NuGet 包是预览版。它奏效了。
我现在在一台新机器上,不知道这个包的预览提要是什么,所以我卸载了它并安装了这个:
> Install-Package Microsoft.AspNet.SignalR.Core -Version 2.4.1
除了 Startup.cs 文件中的这两个错误之外,只有一些命名空间更改似乎一切正常。
错误 CS1061 'IServiceCollection' 不包含 'AddSignalR' 并且没有可访问的扩展方法 'AddSignalR' 接受 可以找到“IServiceCollection”类型的第一个参数(你是 缺少 using 指令或程序集引用?)
错误 CS1061 'IApplicationBuilder' 不包含 'UseSignalR' 并且没有可访问的扩展方法 'UseSignalR' 接受 可以找到“IApplicationBuilder”类型的第一个参数(你是 缺少 using 指令或程序集引用?)
我环顾四周,除了有人建议您需要安装我找不到的 Microsoft.AspNetCore.SignalR.Http 外,没有太多可用的东西。其他人建议你需要安装这个:
Install-Package Microsoft.AspNetCore.SignalR.Client -Version 1.1.0
我试过了,但错误仍然存在,我该如何让这些消失?
【问题讨论】:
-
Microsoft.AspNetCore.SignalR自 2.1 起成为 ASP.NET Core 的一部分。您的目标是哪个版本? -
该项目的目标是 2.0,但我现在已将其更改为 2.2
-
AddSignalR 扩展方法驻留在 Microsoft.Extensions.DependencyInjection 命名空间中。你在使用这个命名空间吗?