1089
votes

This morning I faced a problem while opening my Visual Studio solution, and when I tried to run it, it said:

No exports were found that match the constraint contract name

How can I fix this problem?

26
Your are welcome, happy to get you out of this annoying issue.Simon B.Robert
Should you not post your answer as an answer below? In this way we can up-vote it if it worked for us (which it did for me) ;-)Kenneth K.
Does anyone have an idea as to why this issue occurs?pattivacek

26 Answers

2186
votes

I solved this problem by clearing Visual Studio Component Model Cache.

Just delete or rename this folder:

%LocalAppData%\Microsoft\VisualStudio\11.0\ComponentModelCache

or

%LocalAppData%\Microsoft\VPDExpress\11.0\ComponentModelCache

and restart Visual Studio.

The version of Visual Studio you have is specified by the number e.g.

Visual Studio 2012 is 11.0 (as shown above)

Visual Studio 2013 is 12.0

Visual Studio 2015 is 14.0

Visual Studio 2017 is 15.0

Visual Studio 2019 is 16.0

For those that don't know: %LocalAppData%\ is the same as C:\Users\{yourUsername}\AppData\Local

For those who have multiple versions of Visual Studio installed, e.g. 2012 and 2013, it might help to remove the ComponentModelCache for both versions before restarting Visual Studio, e.g. 11.0 and 12.0.

153
votes

No need to rename or delete the whole folder:

(%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache)

Just rename or delete the Microsoft.VisualStudio.Default.cache file inside the above location.

73
votes

Visual Studio Express 2012 has different paths.

Visual Studio Express

  • ...\Users\{user}\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache

With Visual Studio Express 2012 for Web

  • ...\Users\{user}\AppData\Local\Microsoft\VWDExpress\11.0\ComponentModelCache

I did not have to re-install Visual Studio Express

37
votes

This will really work like a champ:

Solution: Try to delete ComponentModelCache folder from the below location.

[C:]\Users\[your user name]\AppData\Local\Microsoft\VisualStudio\[Visual Studio version number]

And after successful delete, recreate the folder with the same name, "ComponentModelCache".

28
votes

This issue can be resolved by deleting or clearing all the folders and files from %AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

This actually clears the Visual Studio component model cache.

On Windows 7 machines, the path is different. When you type %appdata% in Run dialog, it opens the folder C:\Users\<username>\AppData\Roaming.

Click the 'up' button to navigate to the parent folder and select the folder 'Local'.

Final path: C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

28
votes

Deleting the Component Model Cache did not work for me (well, the relative directory given above did not exist in my machine). Instead, I installed an extension to Visual Studio 2012 Express. Menu ToolsExtensions and Updates...OnlineChoose any and then download. This apparently invalidates the cache causing Visual Studio to rebuild it.

Here's my source.

20
votes

for Visual Studio 2012 and later versions, the solution must be deleting the content of the folder ComponentModelCache:

C:\Users\[username]\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache

Visual Studio 2013

C:\Users\[username]\AppData\Local\Microsoft\VisualStudio\12.0\ComponentModelCache
20
votes

For Visual Studio 2013 you need to remove that folder from this path:

%AppData%\..\Local\Microsoft\VisualStudio\12.0
16
votes

I had the same problem upon launching Visual Studio 2013 Ultimate, and the solutions here didn't work for me. I tried deleting the mentioned folders and starting Visual Studio again, but it didn't work.

However I had other problems too, like Microsoft.visual studio package did not load correctly and also Page '312e8a59-2712-48a1-863e-0ef4e67961fc' not found VS 2012. The latter refers to a message in the Team Explorer window saying "Page 'somenumber' cannot be found".

So I run devenv /setup on the Visual Studio command prompt with administrative rights. It did the job, and everything is fine now.

13
votes

Remove ComponentModelCache folder content.

 %AppData%..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
11
votes

Clearing the folders didn't work for me. So I went to 'Programs and Features' and used the change button to startup the Visual Studio 2013 setup.

In the setup I choose the repair function and that fixed the problem for me.

9
votes

I had the same problem with Visual Studio Express 2013 of Windows 8.1.

Unfortunatly there was no "ComponentModelCache" folder in
%AppData%..\Local\Microsoft\VisualStudio\12.0\ComponentModelCache.

I found the "ComponentModelCache" folder in
..\Users[username]\AppData\Local\Microsoft\WDExpress\12.0

and solved this problem by removing this folder from there.

8
votes

If you have VS 2013, you have to go to: %LOCALAPPDATA%\Microsoft\VisualStudio\12.0 then rename the ComponentModelCache folder.

7
votes

I experienced a similar problem after some updates released from Microsoft (part of them where about .NET framework 4.5).

On the Internet I got the following link to the Microsoft knowledge base article:

Update for Microsoft Visual Studio 2012 (KB2781514)

It worked for me.

6
votes

This happened to me with Visual Studio 2013 Web, after Windows installed several updates. Unfortunately none of the suggestions in this thread helped.

I had to re-run the installer and select the "Repair" option. After that (and a reboot) it was working once again.

In some cases you may have to repair more than one version of Visual Studio. One example is when a Script Task control in VS 2013 opens VS 2012 when you click Edit Script.

4
votes

Renaming the ComponentModelCache folder worked for me in Visual Studio 2015, but with a slightly different path:

%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
3
votes

I have Windows 7 x64 with a second partition on which Windows 8 (preview installed). While working with Microsoft Visual Studio Express 2012 for Windows Phone, I come up with the same problem. But the ComponentModelCache is found here:

C:\Users\Jayaram\AppData\Local\Microsoft\VPDExpress\11.0

I am unable to delete or rename as I get the "access is denied" message when I try to use command prompt:

Administrator: VS2012 X64 CrossToolsCommandPrompt

3
votes

This issue is because of a MEF cache corruption. Installing the feedback extension (or installing any extension) will invalidate the cache causing VS to rebuild it.

click for source.

3
votes

I am using Visual Studio 2012. After installing the Visual Studio 2013 web express, when I want to run or open any project in Visual Studio 2012 it shows me the following error:

"no exports were found that match the constraint contract name".

I also tried the above solution for clearing the ComponentModelCache, but I did not find the folder. I solves my problem just by: Repair Visual Studio 2012

For the Express versions of the software, the folder you need is in a slightly different place(s): For Express 2012 for Web it is C:\Users\XXXXXXXX\AppData\Local\Microsoft\VWDExpress - not in the Visual Studio folder.

2
votes

i experienced this problem in Microsoft Visual Studio Express 2012 for windows phone while trying to open file.

Then i browsed to

C:\Users\MyUserName\AppData\Local\Microsoft\VPDExpress\11.0\ComponentModelCache

And Inside ComponentModelCache i deleted Microsoft.VisualStudio.Default.cache CACHE file. Finaly i restarted visual studio and reopened my project.

Then my problem was solved, i was able to open file.

Note: My OS is windows 8. And i installed SDK 8 for developing windows phone app

Thanks

2
votes

I got an error with the same error message - two years later. It's a different problem this time though, related to .NET Core dnx things.

I couldn't find an answer on Stack Overflow, but there's a GitHub issue that contains a workaround: https://github.com/aspnet/Home/issues/1455

Below is the most important part of the workaround:

  • Delete the entire C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\DNX directory. (As far as I understand, it belongs to the old version of ASP.NET Core RC1, which for some reason is still shipped even with Visual Studio 2015 Update-3).
  • Delete the C:\Users\<user>\AppData\Local\Microsoft\VisualStudio\14.0\devenv.exe.config file.
  • Run the Developer Command Prompt for Visual Studio 2015 as Administrator, and execute the devenv /setup command. The new devenv.exe.config file is generated. This time there are many assemblies that refer to the C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\DotNet directory.
  • Run the Visual Studio 2015 and check that it shows the Microsoft .NET Core Tools (Preview 2) 14.1.20624.0 in the Help => About Microsoft Visual Studio menu.

Thanks to olegburov's post on GitHub for figuring this out.

1
votes

I had to uninstall some external components like Postsharp and Apex and then it worked. I also tried the chosen solution but it gave me more errors.

1
votes

Deleting the folders haven't worked for me i have go control panel and repaired

Visual Studio Installer Projects extensions for VS 2013.

And it worked for me

0
votes

I got this error after reinstalling IntelliJ IDEA and ReSharper for C# in Visual Studio 2013.

First, I got an error problem with extensions, and after this I got this error:

"No exports were found that match the constraint contract name”

I simply removed folder ComponentModelCache and resolved this error.

0
votes

My 2 cents: Following all above lifesaving tips, I had a slightly different experience; mine is VS 2017 Community Edition, installed once, and I notice that have all these 3 folders:

%LocalAppData%\Microsoft\VisualStudio\15.0 ==> Empty
%LocalAppData%\Microsoft\VisualStudio\7f0c75b0 ==> has only the CoreCon folder

This is the one that has the ComponentModelCache:

%LocalAppData%\Microsoft\VisualStudio\15.0_7f0c75b0

Deleting only the Microsoft.VisualStudio.Default.cache had no effect.

So, I deleted all 4 files there: .cache, .err, .external and catalogs. On restarting VS, problem gone and appeared a 5th file:

Microsoft.VisualStudio.Default.scan
0
votes

Removing ComponentModelCache did not work for me. Reinstalling VS 2019 did thanks to a recommendation on this Microsoft support thread.

Details

  • This seems to be a known bug with a fix incoming from MS (as of 1/7/2020)
  • Experienced after upgrading from VS2019 Pro 16.2 (i think it was?) to 16.4.2 using Visual Studio Installer
  • Error displayed when trying to launch both nuget console and nuget package manager