我正在使用 Visual Studio 2015 Update 3 并将*.csproj
可移植类库设置为目标.NETStandard1.x
。
为了能够引用 Nancy 2.0.0-barneyrubble nuget 包,我需要将可移植类库升级到.NETStandard1.6
。 但是,这样做会使项目无法构建。
任何尝试在 Visual Studio 中构建它或使用 msbuild 都会报告此错误:
您的项目未引用“.NETPlatform,Version=v5.0”框架。 在 project.json 的“frameworks”部分添加对“.NETPlatform,Version=v5.0”的引用,然后重新运行 NuGet 还原。
这是project.json
文件:
{
"supports": {},
"dependencies": {
"Microsoft.AspNetCore.Owin": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.NETCore.Portable.Compatibility": "1.0.1",
"Nancy": "2.0.0-Pre0",
"NETStandard.Library": "1.6.1"
},
"frameworks": {
"netstandard1.6": {}
}
}
但是,从命令行使用dotnet restore
和dotnet build
构建项目是可行的。
我知道这个问题不是南希特有的。 然而,我很想知道是否有人找到了解决这个问题的方法。 或者在构建 Nancy 本身时是否可以使用较低的 .NET Standard 版本?
我不认为仅仅使用 Visual Studio 2015 Update 3 就足够了。 Visual Studio 的 dotnet/web 工具是带外发布的,因此您需要在此处获取最新版本。
@khillang我已经安装了 .NET Core 工具(命令行和 Visual Studio 2015 集成)。 我可以愉快地构建 .NET Standard 1.3 类库。 只是我需要 1.6 才能引用 Nancy。 这不会建立。
唔。 你看过这个吗?
谢谢 - 实际上,将其添加到*.csproj
文件的末尾就可以了:
<PropertyGroup>
<NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>
</PropertyGroup>
我写了一篇关于这个主题的博客文章,以防万一。
最有用的评论
我写了一篇关于这个主题的博客文章,以防万一。