Visual Studio 2019 中无法加载项目:工具版本和 SDK 参考问题

Visual Studio 2019 中无法加载项目:工具版本和 SDK 参考问题

我最近从 Visual Studio 2017 切换到了 2019。但是,我无法加载任何项目。当我加载解决方案时,该解决方案中的每个项目在解决方案资源管理器中都显示为“未加载”。右键单击并选择“重新加载”会产生以下错误之一:

C:\<path>\<file>.csproj : error : The tools version "15.0" is unrecognized. Available tools versions are "2.0", "3.5", "4.0". C:\<path>\<file>.csproj

对于指定工具版本的项目,或

C:\<path>\<file>.csproj : error : The project file cannot be opened by the project system, because it is missing some critical imports or the referenced SDK cannot be found.

对于指定 SDK 的项目。

几个相关问题建议修改 global.json 文件、卸载/重新安装 MSBuild、将 PATH 设置为指向 Program Files/dotnet 文件夹或安装最新的 SDK。我安装了最新版本的 .NET core SDK 以及许多其他版本,并且我的 PATH 环境变量指向 Program Files/dotnet。我没有安装恶意的 MSBuild 15,并且添加 global.json 文件无法解决任何项目。

这些都是在 VS 2019 和 VS 2017 的其他副本中加载的项目。我不知道该怎么办。非常感谢大家的帮助。

答案1

自我回答以防其他人遇到这种情况。

当前的问题是,我的系统上有一些旧的(且有缺陷的)MSBuild 版本。由于 gacutil -l 仅在设置了某些环境变量时才会列出这些程序集,因此情况变得复杂。在我的全局程序集缓存中搜索后,我能够在Windows\Microsoft.NET\assembly\GAC_MSIL以 开头的几个不同文件夹下找到它们Microsoft.Build。我删除了包含模糊版本号的任何子文件夹或文件15。重新启动 VS 2019,问题就解决了。

相关内容