我使用VS 15.8.7创建了一个新的.NET Standard 2.0 NuGet软件包。它唯一的依存关系是Newtonsoft.Json 12.0.1
。然后,我创建了另一个.NET Core 2.1 NuGet程序包,并将.NET Standard程序包安装在Core项目中。它已安装,但给了我Warning NU1701
:
警告NU1701软件包“ X”已使用恢复 “ .NETFramework,Version = v4.6.1”,而不是项目目标框架 '.NETCoreApp,Version = v2.1'。该软件包可能不完全兼容 与您的项目...
.NET Core 2.1从.NET Standard docs开始实施.NET Standard 2.0。另外,Newtonsoft.Json 12.0.1的文档没有显示对.NET Standard 2.0的依赖。因此,我的期望是.NET Standard NuGet软件包将无缝安装到.NET Core项目中。
我在项目中搜索了“ 4.6.1”和“ 461”等,唯一的匹配项是在project.assets.json
的> netstandard2.0> imports框架中
"frameworks": {
"netstandard2.0": {
"dependencies": {
"NETStandard.Library": {
"suppressParent": "All",
"target": "Package",
"version": "[2.0.3, )",
"autoReferenced": true
},
"Newtonsoft.Json": {
"target": "Package",
"version": "[12.0.1, )"
}
},
"imports": [
"net461"
],
"assetTargetFallback": true,
"warn": true
}
}
但是,我不确定这是做什么的。我删除了“导入”数组,但它重新生成就重新构建了。
此外,我只安装了Newtonsoft.Json 12.0.1
,并且安装时没有警告。
我已经在Internet上寻找解决方案,但是我遇到的关于Warning NU1701
的每次讨论都涉及在项目中安装非.NET Standard NuGet软件包。为什么使用.NET Standard软件包会收到此警告,如何解决?