我想用Target Framework .NET Standard 2.0创建一个类库项目。
我已将Visual Studio 2017
更新为版本15.3
,并在Visual Studio安装程序中手动选中了.NET Framework 4.7 SDK
和.NET Framework 4.7 targeting pack
并安装了它们。
“项目/应用程序”窗口中的“目标框架”组合框中仍然没有.NET Standard 2.0
选项。所以我手动将.csproj
文件中的TargetFramework标记更改为netstandard2.0
,但在尝试构建后我收到此错误:
当前的.NET SDK不支持以.NET Standard 2.0为目标。 要么是.NET Standard 1.6或更低版本,要么使用.NET版本 支持.NET Standard 2.0的SDK。
答案 0 :(得分:125)
听起来像为特定版本安装VS2017更新并没有安装.NET Core 2.0 SDK。您可以下载here。
要检查您已安装的SDK版本,请运行
dotnet --info
从命令行。请注意,如果当前工作目录或任何祖先目录中有global.json
文件,则会覆盖运行SDK的哪个版本。 (例如,如果您想为项目强制执行特定版本,那将非常有用。)
根据评论判断,某些版本的VS2017更新执行安装.NET Core SDK。我怀疑它会随着时间的推移而有所不同。
答案 1 :(得分:10)
以上答案并不能解决我的问题。我终于通过专门转到此链接https://www.microsoft.com/net/download/visual-studio-sdks并下载所需的 Visual Studio SDK 来解决了该问题。真令人困惑,我不明白为什么,但这解决了我的问题
答案 2 :(得分:6)
对我来说,解决方案是更改global.json
中的版本以反映已安装的版本。
与其他人一样,可以在cmd
中找到运行dotnet --info
的版本
此:
{
"projects": [ "src", "test" ],
"sdk": {
"version": "2.0.3"
}
}
变成了:
{
"projects": [ "src", "test" ],
"sdk": {
"version": "2.1.4"
}
}
您还可以通过运行
创建global.json文件dotnet new globaljson --sdk-version 2.1.4
在项目的根目录
答案 3 :(得分:6)
答案 4 :(得分:6)
我同时安装了Visual Studio 2019和2017。我尝试单独安装VS2017的.NET Core 2.X SDK,但没有成功。
问题是,我已将.NET Core 3.0 SDK安装为默认的sdk版本,而VS2017不喜欢。
我的解决方案是为特定项目切换SDK版本。
$ dotnet --info
.NET Core SDK (reflecting any global.json):
Version: 3.1.100
Commit: cd82f021f4
Runtime Environment:
OS Name: Windows
OS Version: 10.0.18362
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\3.1.100\
Host (useful for support):
Version: 3.1.0
Commit: 65f04fb6db
.NET Core SDKs installed:
1.1.14 [C:\Program Files\dotnet\sdk]
2.1.202 [C:\Program Files\dotnet\sdk]
2.1.509 [C:\Program Files\dotnet\sdk]
2.2.110 [C:\Program Files\dotnet\sdk]
3.0.100 [C:\Program Files\dotnet\sdk]
3.1.100 [C:\Program Files\dotnet\sdk]
$ dotnet new globaljson --sdk-version 2.2.110 --force
现在,dotnet
将为此解决方案使用指定的SDK版本。
在没有弄乱我的3.0项目的情况下,我还没有找到一种在整个系统范围内进行操作的方法。
答案 5 :(得分:4)
这对我有用
在“工作负载”选项卡上,选中“ .Net Core跨平台开发”,然后单击“修改”
别忘了在左侧菜单中检查“ .NET Core 2.0开发工具”。
我以前安装过Asp Net Core,但是在我使用Visual Studio进行安装后,它才出现在我的Visual Studio中。
答案 6 :(得分:3)
当我将Visual Studio升级到15.5.1版时,.Net Core SDK升级到2.X,因此此错误消失了。当我运行<select [(ngModel)]="orderTracking.selectDestination">
...
</select>
时,我现在看到以下内容:
答案 7 :(得分:2)
在卸载一些.NET Core 1.x预览版SDK之后,我刚刚在15.8.3中使用了该软件,我的应用程序无法编译并显示错误。
即使我使用的是Windows 10 x64,也可以通过安装最新的x86版本的SDK进行修复。
我认为这是因为VS 2017仍然是x86程序,尽管这些程序以x64运行,但编译器正在寻找合适的x86 SDK
答案 8 :(得分:2)
实际上,对我来说,它与其他答案的发生方式相反。
我已安装 最新的.NET Core SDK 在问题出现之前(本例中为3.0.0-preview2)没有最新版本的Visual Studio(不确定是否会有所不同)。
因此,解决方案仅仅是卸载最新的.NET Core SDK 。 (如果需要,这并不完美,因此您可以考虑将Visual Studio升级到最新版本,但至少可以解决当前的问题。)
答案 9 :(得分:0)
我遇到了同样的问题,并且拥有最新版本 Microsoft Visual Studio社区2017 版本15.7.3
我刚刚下载了最新的SDK 2.1,没有其他定位问题。 https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.301-windows-x64-installer
信息: Microsoft Visual Studio社区2017 版本15.7.3 VisualStudio.15。发行版/15.7.3+27703.2026 Microsoft .NET Framework 版本4.7.03056
安装版本:社区
C#工具2.8.3-beta6-62923-07。提交哈希:7aafab561e449da50712e16c9e81742b8e7a2969 IDE中使用的C#组件。根据您的项目类型和设置,可以使用不同版本的编译器。
通用Azure工具1.10 提供由Azure移动服务和Microsoft Azure工具使用的通用服务。
NuGet软件包管理器4.6.0 Visual Studio中的NuGet程序包管理器。有关NuGet的更多信息,请访问http://docs.nuget.org/。
ProjectServicesPackage扩展1.0 ProjectServicesPackage Visual Studio扩展详细信息
ResourcePackage扩展1.0 ResourcePackage Visual Studio扩展详细信息
Visual Basic工具2.8.3-beta6-62923-07。提交哈希:7aafab561e449da50712e16c9e81742b8e7a2969 IDE中使用的Visual Basic组件。根据您的项目类型和设置,可以使用不同版本的编译器。
Visual Studio代码调试适配器主机程序包1.0 用于在Visual Studio中托管Visual Studio Code调试适配器的Interop层
Visual Studio Tools for Unity 3.7.0.1 用于Unity的Visual Studio工具
答案 10 :(得分:0)
我刚刚遇到了这个麻烦。就我而言,我有一个有效的脚本
SET devenvPath=C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe
"%devenvPath%" mySolution.sln /Rebuild "DebugWithUT|AnyCpu" /Out mySolution.Build.log
今天,我开始收到这个确切的错误。但是现在我记得前一天安装VS2019。看起来它改变了VS2017。我去了VS2017 Update,安装了最新版本/更新,并将其修复了。
答案 11 :(得分:0)
请确保您下载的是x86 SDK,而不仅仅是Visual Studio的x64 SDK。
答案 12 :(得分:0)
我遇到了同样的问题,因为当前的.NET SDK不支持定位.NET Core 3.1。目标.NET Core 1.1或更低版本,或者使用支持.NET Core 3.1的.NET SDK版本。
1)确保计算机上已安装.Net core SDK。 Download .NET!
2)如下设置PATH环境变量 Path
答案 13 :(得分:0)
在尝试在TFS中构建解决方案时遇到了这个问题。我们正在使用“点网发布”任务。使用msbuild为我们破冰。