无法在VS 2017 U1(15.3)中打开的项目中加载“Microsoft.Build.Framework.SdkReference”类型

问题描述 投票:10回答:3

在完成(显然是成功的)从VS 2017 15.1升级到15.3后,我再也无法加载任何C#项目(无法打开现有,无法创建新项目)。所有失败都有这个错误:

无法从程序集“Microsoft.Build.Framework,Version = 15.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”加载类型“Microsoft.Build.Framework.SdkReference”。

我找到了一个引用此问题的人参考RC版本的15.3,但没有其他人,所以我不知道我的环境可能导致这个问题。我已经尝试清除缓存和用户数据,修复,完全卸载/重新安装,以及删除第三方组件。我没有想法。

我在这里提供的信息非常多,所以我不知道从哪里开始。我很感激任何想法,或者至少看看其他人是否遇到了同样的问题。

c# .net visual-studio
3个回答
5
投票

使用管理员“VS 2017的开发人员命令提示符”运行

gacutil /u "Microsoft.Build.Framework, Version=15.1"

请不要将其他版本重新安装到GAC。 MSBuild不应该在GAC中,并且在下次安装它时会在Visual Studio更新MSBuild时导致问题,因为GAC中的文件优先于Visual Studio提供的更新版本。


16
投票
  1. 打开VS2017的开发人员命令提示符(我以管理员身份打开它)
  2. gacutil / u Microsoft.Build.Framework

从全局程序集缓存[GAC]卸载Microsoft.Build.Framework

  1. gacutil / i“C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ Microsoft.Build.Framework.dll”

重新安装15.1.0版本。

现在解决方案中的项目正确加载。


0
投票

在已经安装了Visual Studio 2017的计算机上安装Visual Studio 2015后,我遇到了一个非常类似的问题。

将Microsoft.Build.Framework重新安装到GAC中解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.