The current .NET SDK does not support targeting .NET Core 2.2
The current .NET SDK does not support targeting .NET Core 2.2
1. 奇怪的错误
最近遇到了一件奇怪的事,
The current .NET SDK does not support targeting .NET Core 2.2. Either target .NET Core 1.1 or lower, or use a version of the .NET SDK that supports .NET Core 2.2.
初步看错误提示,就是需要安装.NET Core 2.2及以上版本,安装并使用控制台验证,明明下载安装装了.NET Core 2.2 SDK,但是Visual Studio的目标框架却不显示对该版本(.NET Core 2.2)的支持。
C:\Users\admin>dotnet --info
.NET Core SDK(反映任何 global.json):
Version: 2.2.203
Commit: --Commit值--
运行时环境:
OS Name: Windows
OS Version: 10.0.15063
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\2.2.203\
Host (useful for support):
Version: 2.2.4
Commit: f95848e524
2. 解决思路
- 开始怀疑是Visual Studio 2017 没安装好(公司的电脑,接手的时候数据盘被格式化了),修复了一下,仍然存在该问题,所以,不是该问题导致的。
- 百度大法(Google大法)也不行
于是向公司的大牛寻求解决方法,于是得到了一个Visual Studio 2017 V15.9.4的安装包和dotnet-sdk-2.2.101-win-x64.exe的安装包(疑惑:我的版本明明比这还新的),安装后,问题解决。
那么,出现这个问题的原因呢?
3. 原因分析
现在,重新进去下载页面,注意下黄色背景的提示信息
This release is not compatible with Visual Studio 2017. If you are using Visual Studio 2017, you should use .NET Core SDK 2.2.106.
进入.NET Core SDK 2.2.106页面,发现下面信息
v2.2.4
Security patch 🛈
Released 2019-04-09
Release notes
Supports C# 7.3
Supports F# 4.5
Supports Visual Studio 2017 (v15.9)
Included in Visual Studio 2017 (v15.9.13)
ASP.NET Core IIS Module 12.2.19081.4
Supports Visual Studio 2017 (v15.9),这个才是问题产生的本质原因。
4. 总结
.Net Framework 对 Visual Studio 基本没啥要求,而 .NET Core SDK 对 Visual Studio 版本有着严格的要求。所以,升级版本才能解决该问题。