是否有办法确定NuGet软件包所针对的.Netstandard版本?

问题描述 投票:0回答:1

最近,我尝试将SignalR dll导入Unity项目(支持.NET Standard 2.0)。 NuGet程序包-> Microsoft.AspNetCore.SignalR.Client当前处于版本3.1.2。这里是列出的依赖项:

。NETStandard,Version = v2.0

Microsoft.AspNetCore.Http.Connections.Client

(> = 3.1.2)Microsoft.AspNetCore.SignalR.Client.Core(> = 3.1.2)

但是,当我将这些dll移入Unity项目时,我遇到了一个错误:

错误CS1705程序集'Microsoft.AspNetCore.SignalR.Client.Core'与身份'Microsoft.AspNetCore.SignalR.Client.Core,Version = 3.1.2.0,文化=中性,PublicKeyToken = adb9793829ddae60'使用'netstandard,版本= 2.1.0.0,文化=中性,PublicKeyToken = cc7b13ffcd2ddd51'它具有比引用的程序集“ netstandard”更高的版本身份'netstandard,版本= 2.0.0.0,文化=中性,PublicKeyToken = cc7b13ffcd2ddd51'

这对我来说很有意义,因为我不希望Unity支持2.1版(.NET Standard docs的表指出2.0是Unity的最新版本。我可以将该软件包降级到1.1版,可以正常工作(至少此错误消失了。)我通过浏览每个版本来确定选择哪个SignalR.Client版本,安装/复制直到错误消失。

1.1.0的依赖项是相同的(除了Core和Client软件包现在列为(>=1.1.0)而不是(>= 3.1.2)

问题:是否有比猜测更好的方法来确定需要哪个版本的.NET Standard,也许是某个地方的规范显示了需要支持哪个版本的.NET Standard。要使用的软件包?

c# .net unity3d .net-standard
1个回答
0
投票

是的,有一个简单的方法。

FuGet列出了有关NuGet软件包的许多详细信息,包括针对哪些框架的版本。例如,Microsoft.AspNetCore.SignalR.Client 3.1.2的目标是netstandard2.0。

一个方便的快捷方式是,您正在查看软件包的NuGet页面,只需在URL栏中使用“ fuget”重播“ nuget”,就可以轻松地进入Fuget页面。

© www.soinside.com 2019 - 2024. All rights reserved.