在以下解决方案link中,SignalR安装的版本为1.0.1
SignalR不会出现在NuGet软件包列表中,所以我不知道如何升级它。它显示在SDK -> Microsoft.AspNetCore.App (2.1.1)
下,因此已作为该文件的依赖项安装。
我尝试通过使用NuGet安装最新的SignalR来升级它,但代码未获取最新版本。我知道这是因为,当我控制单击SignalR类型时,它会打开一个新文件,说明它正在使用:Assembly location: C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.signalr.core\1.0.1\lib\netstandard2.0\Microsoft.AspNetCore.SignalR.Core.dll
在这种情况下如何升级SignalR?
答案 0 :(得分:0)
尝试从NugetFallbackFolder删除signalR .dll文件,然后我希望它在非后备文件夹中查找相关的.dll文件
答案 1 :(得分:0)
ASP.NET Core SignalR是ASP.NET Core的组件,因此您无需单独对其进行升级。 ASP.NET Core捆绑在托管平台中。因此,要升级ASP.NET Core SignalR(或ASP.NET Core),请下载较新的.NET SDK并使用较新的运行时来构建/运行您的应用程序(如果有,请更改global.json
的sdk部分,否则通常默认情况下使用最新版本。请使用dotnet --info
进行检查。
您说您的应用当前正在使用Microsoft.AspNetCore.App的v2.1.1,它告诉我您正在运行.NET Core 2.1。在https://dotnet.microsoft.com/download上,.NET Core的最新版本是2.2,因此有可用的更新,尽管我不知道它将对SignalR进行哪些更改。
edit:与SignalR的两个版本链接的页面清楚地说明了NuGet程序包的名称,同时还向您显示Microsoft.AspNet.SignalR可与ASP.NET(System.Web)和OWIN服务器一起使用。 Microsoft.AspNetCore.SignalR与ASP.NET Core服务器一起使用。由于您的应用程序使用Microsoft.AspNetCore.App,因此您无法选择要使用哪个SignalR版本。如果要使用另一个,则必须创建一个使用.NET Framework ASP.NET(使用System.Web)或使用OWIN库的新项目。
对于Microsoft.AspNetCore.SignalR NuGet包,如果您查看依赖关系,将会看到它依赖于ASP.NET Core 2.2的一部分,因此与ASP.NET Core 2.1不兼容。应用程式。您可以尝试添加对最新SignalR程序包的引用,但是当我尝试执行此操作时,在还原项目时出现以下错误消息:
C:\ git \ test \ aspnetcoretest \ aspnetcoretest.csproj:警告NU1608:检测到的软件包版本超出了依赖约束:Microsoft.AspNetCore.App 2.1.1需要Microsoft.AspNetCore.SignalR(> = 1.0.1 && <1.1 .0),但版本Microsoft.AspNetCore.SignalR 1.1.0已解决。
C:\ git \ test \ aspnetcoretest \ aspnetcoretest.csproj:错误NU1107:为Microsoft.AspNetCore.Authentication.Abstractions检测到版本冲突。直接安装/引用Microsoft.AspNetCore.Authentication.Abstractions 2.2.0到项目aspnetcoretest中以解决此问题。
C:\ git \ test \ aspnetcoretest \ aspnetcoretest.csproj:错误NU1107:aspnetcoretest-> Microsoft.AspNetCore.SignalR 1.1.0-> Microsoft.AspNetCore.Http.Connections 1.1.0-> Microsoft.AspNetCore.Authorization。策略2.2.0-> Microsoft.AspNetCore.Authentication.Abstractions(> = 2.2.0)
C:\ git \ test \ aspnetcoretest \ aspnetcoretest.csproj:错误NU1107:aspnetcoretest-> Microsoft.AspNetCore.App 2.1.1-> Microsoft.AspNetCore.Authentication.Abstractions(> = 2.1.1 && <2.2.0 )。
对于C:\ git \ test \ aspnetcoretest \ aspnetcoretest.csproj,恢复在964.82毫秒中失败。
因此,正如我在第一段的第一句话中所述,您不会单独对其进行升级。如果要使用较新的SignalR,请编辑csproj并将<TargetFramework>netcoreapp2.1</TargetFramework>
更改为<TargetFramework>netcoreapp2.2</TargetFramework>
。如果尚未安装,则需要安装.NET Core 2.2 SDK。