我创建了一个.net核心类库程序包,并将其上传到nuget.org。
在依赖项部分中说我的项目依赖于.NetStandard 1.4,即高于1.6的NetStandard.Library
为什么在版本号中存在如此令人困惑的不匹配?
.NetStandard和NetStandard.Library是否应该是同一回事?还是他们不同?
这是我的.csproj
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.4</TargetFramework>
<PackageVersion>2.0.1</PackageVersion>
<AssemblyName>currency</AssemblyName>
</PropertyGroup>
</Project>
以及指向我的项目的链接:
https://www.nuget.org/packages/currency/
最佳答案
我发现了一个有关.NETStandard.Library的有趣页面:
What is the .NETStandard.Library metapackage?
在此页面上,作者说以下几点:
在Microsoft文档中,我找到了有关您的问题的以下信息:
链接:Look at .NetStandard
我认为,它将使用最新版本的.NETStandard.Library,因为它与.NETStandard的较早版本兼容,并且它只是带有引用和一组标准.Net API的元包。因此,如果您的软件包使用的是.NETStandard.Library版本1.6.1,那应该不是问题。
注意:如果您使用.NETStandard 2.0,并且使用.NETStandard.Library版本1.6.1,则无法使用!
更新:像在此答案的注释中提到的svick一样,.NETStandard.Library的最低版本为1.6.0版!
关于c# - 为什么.netstandard 1.4是NetStandard.Library 1.6?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44711570/