Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Could not load type 'Microsoft.Build.Framework.SdkReference' on project open in VS 2017 U1 (15.3)

After doing an (apparently successful) upgrade from VS 2017 15.1 to 15.3, I can no longer load any C# project (can't open existing, can't create new). All fail with this error:

Could not load type 'Microsoft.Build.Framework.SdkReference' from assembly 'Microsoft.Build.Framework, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

I found one reference to someone running into this problem with an RC version of 15.3, but no others, so I've got no idea what about my environment might be causing this problem. I've tried clearing cache and user data, repair, complete uninstall/reinstall, and removing 3rd party components. I am out of ideas.

There's absolutely tons of info I could provide here, so I'm not sure where to start. I'm grateful for any ideas or at least to see if others are running into the same problem.

like image 333
Matt Prigge Avatar asked Aug 17 '17 14:08

Matt Prigge


2 Answers

1.- Open Developer Command Prompt for VS2017 as Admin

2.- Uninstall the Microsoft.Build.Framework from GAC (Global Assembly Cache)

gacutil /u Microsoft.Build.Framework

3.- Re-install the 15.1.0 version (correct path according to current VS2017 edition)

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

Now the projects in solutions should load properly.

like image 177
SpoiledTechie.com Avatar answered Nov 04 '22 14:11

SpoiledTechie.com


Use an adminstrator "Developer Command Prompt for VS 2017" to run

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

Please do not reinstall another version to the GAC. MSBuild should not be in the GAC, and installing it there will cause problems the next time Visual Studio updates MSBuild, because the file from the GAC gets preferred over the updated version delivered with Visual Studio.

like image 7
Rainer Sigwald Avatar answered Nov 04 '22 14:11

Rainer Sigwald