我的.NET Core项目包含以下project.json
:
{
"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对核心项目和标准项目都有效。
答案 0 :(得分:5)
如果检查.Net Standard的兼容性矩阵,看起来.Net 4.6.2仅支持NetStandard 1.5。在框架下,您的目标是标记为vNext的1.6。
See here for the compatibility matrix to know what version you should target
因此换句话说,如果您将配置更改为以下内容,您应该可以自由引用该库:
"frameworks":
{
"netstandard1.5": {}
}
您不需要在另一个答案中添加其他框架类型,因为4.6.2应该能够引用1.5标准。
答案 1 :(得分:1)
您应该可以添加对.Net Framework 4.6.2的支持,并在您的project.json中添加“net462”:
warning: explicit link request to 'include' could not be resolved
see also my project.json on github with a few supported frameworks