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 版本有着嚴格的要求。所以,升級版本才能解決該問題。
