Visual Studio 2019 无法找到 .Net Core SDK

Visual Studio 2019 无法找到 .Net Core SDK

我正在关注这个教程-跨会话和设备共享 Azure 空间锚点- 在 Microsoft Docs 上。

它要求我在 VS 中打开一个项目,但是当我尝试打开它时出现以下错误:

错误:项目系统无法打开该项目文件,因为它缺少一些关键的导入或找不到引用的 SDK。

详细信息:无法找到 .NET Core SDK。请检查它是否已安装,以及 global.json 中指定的版本(如果有)是否与已安装的版本匹配。

我有 JSON 中指定的 SDK 版本和教程中指定的所有其他工具,但仍然一无所获。我想我漏掉了某个步骤。任何帮助都将不胜感激。

答案1

步骤 1)首先dotnet --list-sdks从命令行运行(例如Grzegorz Smulko 的回答)。记下最大版本号。

在此处输入图片描述

步骤 2) 在解决方案的根目录中创建一个 global.json 文件,其中包含步骤 1 中的确切版本号。它需要包含所有数字,否则它将无法工作。这是我撰写本文时的版本

{
  "sdk": {
    "version": "3.1.101"
  }
}

答案2

dotnet --list-sdks尝试在控制台中运行。根据从 下载 .NET Core SDKs 后出现的页面上的信息https://dotnet.microsoft.com/download,您需要拥有 VS2017 的版本 v2.2.106 和 VS2019 的版本 v2.2.203。

如果只安装了 v2.2.203,VS2019 中无法加载项目。我还必须安装 v2.2.105。

答案3

我通过安装 x86 版本的 SDK 解决了这个问题。

看起来每个版本的 Visual Studio 都有其自己的相应 dotnet 版本。这是由于 msbuild 要求。

如果您是 Visual Studio 用户,则存在 MSBuild 版本要求,因此请仅使用每个 Visual Studio 版本支持的 .NET Core SDK。如果您使用其他开发环境,我们建议使用最新的 SDK 版本。

https://github.com/dotnet/core/blob/master/release-notes/2.2/2.2.6/2.2.6.md

正如该页面所详细说明的,每个 Visual Studio 版本都需要以下版本的 dotnet:

  • Visual Studio 2017(Windows):.NET Core SDK x86 2.2.108
  • Visual Studio 2019 版本 16.0:.NET Core SDK x86 2.2.205
  • Visual Studio 2019 版本 16.1:.NET Core SDK x86 2.2.301
  • Visual Studio 2019 版本 16.2:.NET Core SDK x86 2.2.401

答案4

以上方法对我都不起作用。我注意到我在每种类型的项目上都遇到了这个问题,甚至非 netcore 项目也是如此。我能够使用 global.json 并使其正常工作。然后我注意到我在更上面的目录中有一个 global.json,它引用了 .net core 的 alpha 版本。删除该文件后,问题就解决了。

总结

确保目录结构中没有导致问题出现的 global.json 文件。

相关内容