[英].NETStandard Library nuget package - cannot install on standard project
我有带有以下project.json
.NET Core项目:
{
"version": "1.0.0-*",
"dependencies": {
"NETStandard.Library": "1.6.0"
},
"frameworks": {
"netstandard1.6": {
"imports": "dnxcore50"
}
},
"scripts": {
"postcompile": [
"dotnet pack --no-build --configuration %compile:Configuration%"
]
}
}
我创建NuGet包(见postcompile
以上)和出版的NuGet。
然后,我创建了标准的4.6.2库,但是无法安装软件包-软件包不包含目标.NET Framework 4.6.2的有效程序集的错误。
我应该如何准备nuget软件包以使其在标准库中可用? 尽管目标NETStandard对核心项目和标准项目均有效。
如果检查.Net Standard的兼容性矩阵,则看起来.Net 4.6.2仅支持NetStandard 1.5。 在框架下,您将目标标记为vNext的1.6。
因此,换句话说,如果将配置更改为以下内容,则应该可以自由引用该库:
"frameworks":
{
"netstandard1.5": {}
}
您无需添加其他答案中建议的其他框架类型,因为4.6.2应该能够引用1.5标准。
您应该能够通过在project.json中添加“ net462”来添加对.Net Framework 4.6.2的支持:
{
"version": "1.0.0-*",
"dependencies": {
"NETStandard.Library": "1.6.0"
},
"frameworks": {
"netstandard1.6": {
"imports": "dnxcore50"
},
"net462": {
"dependencies" : {
"System.Runtime": "4.0.20.0" // you may have to add this
// add here your dependencies
}
}
},
"scripts": {
"postcompile": [
"dotnet pack --no-build --configuration %compile:Configuration%"
]
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.