VS Code - 找不到“.NETFramework,Version = v5.0”的参考程序集

Msz*_*rna 2 c# .net-core visual-studio-code .net-5

我的 VS Code .net 5 设置有问题。

\n
Error MSB3971: The reference assemblies for ".NETFramework,Version=v5.0" were not found. You might be using an older .NET SDK to target .NET 5.0 or higher. Update Visual Studio and/or your .NET SDK.\n
Run Code Online (Sandbox Code Playgroud)\n

前段时间我正在使用.net core 3,最近我想迁移到最新版本。

\n
    \n
  1. 我已经安装了最新版本的 SDK -> https://dotnet.microsoft.com/download/dotnet/5.0
  2. \n
  3. 我将 VS Code 更新到最新版本
  4. \n
  5. 我在 .net 5 中开始了一个全新的项目
  6. \n
\n

我在互联网上寻找解决我的问题的方法,但没有任何效果。

\n

Powershell dotnet 版本:

\n
dotnet --version\n5.0.401\n
Run Code Online (Sandbox Code Playgroud)\n
dotnet --info   \nZestaw .NET SDK (odzwierciedlenie dowolnego pliku global.json):\n Version:   5.0.401\n Commit:    4bef5f3dbf\n\n\xc5\x9arodowisko uruchomieniowe:\n OS Name:     Windows\n OS Version:  10.0.19043\n OS Platform: Windows\n RID:         win10-x64\n Base Path:   C:\\Program Files\\dotnet\\sdk\\5.0.401\\\n\nHost (useful for support):\n  Version: 5.0.10\n  Commit:  e1825b4928\n\n.NET SDKs installed:\n  2.1.700 [C:\\Program Files\\dotnet\\sdk]\n  2.1.801 [C:\\Program Files\\dotnet\\sdk]\n  2.2.202 [C:\\Program Files\\dotnet\\sdk]\n  5.0.401 [C:\\Program Files\\dotnet\\sdk]\n\n.NET runtimes installed:\n  Microsoft.AspNetCore.All 2.1.11 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.All]\n  Microsoft.AspNetCore.All 2.1.12 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.All]\n  Microsoft.AspNetCore.All 2.2.3 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.All]\n  Microsoft.AspNetCore.App 2.1.11 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App]\n  Microsoft.AspNetCore.App 2.1.12 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App]\n  Microsoft.AspNetCore.App 2.2.3 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App]\n  Microsoft.AspNetCore.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App]\n  Microsoft.NETCore.App 2.1.11 [C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App]\n  Microsoft.NETCore.App 2.1.12 [C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App]\n  Microsoft.NETCore.App 2.2.3 [C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App]\n  Microsoft.NETCore.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App]\n  Microsoft.WindowsDesktop.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.WindowsDesktop.App]\n\nTo install additional .NET runtimes or SDKs:\n  https://aka.ms/dotnet-download\n
Run Code Online (Sandbox Code Playgroud)\n

Visual Studio 代码版本:

\n
version: 1.60.2\n
Run Code Online (Sandbox Code Playgroud)\n

有关 Visual Studio 代码的信息

\n

project.csproj 文件的内容

\n
<Project Sdk="Microsoft.NET.Sdk.Web">\n\n  <PropertyGroup>\n    <TargetFramework>net5.0</TargetFramework>\n  </PropertyGroup>\n\n  <ItemGroup>\n    <PackageReference Include="Swashbuckle.AspNetCore" Version="5.6.3" />\n  </ItemGroup>\n\n</Project>\n\n
Run Code Online (Sandbox Code Playgroud)\n

我有最新的 SDK 和 VS Code,我不知道还能做些什么来让它工作。

\n
\n

我卸载了所有版本的 .net 并仅安装 5.0。\n现在我遇到了新错误

\n
error MSB4236: The SDK \'Microsoft.NET.Sdk.Web\' specified could not be found.\n
Run Code Online (Sandbox Code Playgroud)\n
\n

重新安装 .NET 后,我从终端得到了这个:

\n
dotnet --info\nZestaw .NET SDK (odzwierciedlenie dowolnego pliku global.json):\n Version:   5.0.401\n Commit:    4bef5f3dbf\n\n\xc5\x9arodowisko uruchomieniowe:\n OS Name:     Windows\n OS Version:  10.0.19043\n OS Platform: Windows\n RID:         win10-x64\n Base Path:   C:\\Program Files\\dotnet\\sdk\\5.0.401\\\n\nHost (useful for support):\n  Version: 5.0.10\n  Commit:  e1825b4928\n\n.NET SDKs installed:\n  5.0.401 [C:\\Program Files\\dotnet\\sdk]\n\n.NET runtimes installed:\n  Microsoft.AspNetCore.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App]\n  Microsoft.NETCore.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App]\n  Microsoft.WindowsDesktop.App 5.0.10 [C:\\Program Files\\dotnet\\shared\\Microsoft.WindowsDesktop.App]\n\nTo install additional .NET runtimes or SDKs:\n  https://aka.ms/dotnet-download\n
Run Code Online (Sandbox Code Playgroud)\n

Msz*_*rna 7

我为这个问题苦苦挣扎了很长时间。这是需要检查的事项的列表。

  1. 从您的计算机中删除所有 SDK。- 在控制面板中找到“程序和功能”,然后删除所有Microsoft .NET Runtime - x.x.xxMicrosoft .NET SDK x.x.x

  2. 安装最新的 .NET SDK 和运行时- 我使用这个网站

  3. 检查你的PATH - 检查windows环境变量的路径是否包含C:\Program Files\dotnet

  4. !! 检查 MSBuildSDKsPath 环境变量- 事实证明,安装新的 SDK 不会更改环境路径中的信息。我仍然在那里列出了旧版本,卸载所有内容后,我收到一条消息说'Microsoft.NET.Sdk.Web' could not be found.

    检查MSBuildSDKsPath变量的值。对我来说正确的值是 xC:\Program Files\dotnet\sdk\5.0.401\Sdks 环境变量


Dmi*_*rov 5

就我而言,这是由根文件夹中的 global.json 引起的,该文件夹中的 SDK 硬编码较低。可能值得将其添加到之前的答案中。