VS 2019 更新到 16.8.4 破坏了我的每一个解决方案

Posted

技术标签:

【中文标题】VS 2019 更新到 16.8.4 破坏了我的每一个解决方案【英文标题】:VS 2019 update to 16.8.4 broke every single one of my solutions 【发布时间】:2021-01-15 18:48:20 【问题描述】:

我不记得我以前的版本(可能是 16.8.1),但刚刚更新到 16.8.4 导致我的解决方案项目都无法加载。这是我的一种解决方案的输出窗口:

F:\Users\username\Documents\Visual Studio Projects\FitnessManagerCore\FitnessManagerCore\FitnessManagerCore.csproj : error  : The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" is correct, and that the file exists on disk.  C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.CSharp.CurrentVersion.targets

F:\Users\username\Documents\Visual Studio Projects\GeneralUtilities\GeneralUtilities\GeneralUtilities.csproj : error  : The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" is correct, and that the file exists on disk.  C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.CSharp.CurrentVersion.targets

F:\Users\username\Documents\Visual Studio Projects\FitnessManagerCore\FitnessManagerConsole\FitnessManagerConsole.csproj : error  : The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\Microsoft.CSharp.Core.targets" is correct, and that the file exists on disk.  C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.CSharp.CurrentVersion.targets

VS 建议尝试手动重新加载项目。当我尝试这样做时,我收到以下错误消息:

微软似乎没有办法回滚以前的安装。我没有还原点。我不想卸载/重新安装。

编辑:

我刚刚尝试创建一个新的解决方案,看看如果我尝试加载一个现有项目会发生什么。在使用 .NET Core 创建控制台应用程序时,我得到以下信息:

更新:

这个最新的 VS 2019 根本不想以任何身份在我的机器上工作。我卸载了 VS 2019,重新启动并尝试重新安装。安装中途停止并显示以下错误消息。当我单击“报告此问题”时,它会打开一个 Microsoft 网页来报告该问题,但显示“已与 Visual Studio 断开连接”。由于根据我正在阅读的内容我无法回滚到以前的版本,我想我不能再使用 VS 2019 了。

【问题讨论】:

感谢您的警告。 AFAIK,还原点是唯一的方法。 MS 不会在任何地方提供以前的版本供下载。如果有人知道如何安装最后一个好版本,即 16.6.x,那将是对社区非常有价值的贡献。 是时候将Microsoft 重命名为BuggysoftZerotestedsoft(迟到总比没有好)。他们的Skype 效果并不好。 @AlexanderDyagilev 有趣的是,您可以在他们的产品中看到他们内部结构或政策的暗示。我一直认为 VS 是最好的 IDE 之一,如果不是最好的,但 msbuild 和任何与 Azure 相关的东西都是垃圾。我们可以清楚地看到腐烂在 16.6.x 和 16.7.x 之间蔓延到 VS。让你想知道他们雇用或解雇了谁。 我看到 Visual Studio 安装程序一直在创建还原点...您是否运行过 Visual Studio 安装程序并尝试修复? @ChuckWalbourn 我进行了修复。看来,它基本上进行了完全重新安装。不过,没有运气。仍然遇到同样的错误。 【参考方案1】:

如果您有,您可以签入您的 csporj 文件:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

您需要将MSBuildToolsPath 更改为MSBuildBinPath,如下所示:

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

当您在 Visual Studio 2008 中创建项目时,默认情况下 $(MSBuildToolsPath) 作为 Microsoft.Build.Engine v3.5 的路径添加到您的 csproj 文件中。 请务必将其更改为 $(MSBuildBinPath),这是 Microsoft.Build.Engine v2.0 的路径。

(更多信息here)

【讨论】:

阅读 OP。我完全卸载了 VS 2019,现在甚至无法重新安装。

以上是关于VS 2019 更新到 16.8.4 破坏了我的每一个解决方案的主要内容,如果未能解决你的问题,请参考以下文章

将角度从 1.2 更新到 1.3 破坏了我的指令

最新的 AG 网格更新 (26.2.0) 破坏了我的脚本

似乎 Xamarin ListView 绑定在更新的 VS 2019 16.11.3 中被破坏。 CollectionView 也绑定。有人可以调查一下吗?

Android 11 更新破坏了我的文件编写代码

Xcode 11 破坏了 DateFormatter?

scipy 0.11.0 到 0.12.0 更改了线性 scipy.interpolate.interp1d,破坏了我不断更新的插值器