今天早上,我在打开Visual Studio解决方案时遇到了一个问题,当我试图运行它时,它说:

没有找到与约束契约名称匹配的导出

我该如何解决这个问题?


当前回答

这真的会像冠军一样工作:

解决方案:尝试从下面的位置删除ComponentModelCache文件夹。

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

在成功删除之后,重新创建同名的文件夹“ComponentModelCache”。

其他回答

我使用的是Visual Studio 2012。安装Visual Studio 2013 web express后,当我想在Visual Studio 2012中运行或打开任何项目时,它会显示以下错误:

“没有发现与约束合同名称匹配的导出”。

我还尝试了上面的解决方案来清除ComponentModelCache, 但是我没有找到文件夹。我解决了我的问题:修复Visual Studio 2012

对于Express版本的软件,您需要的文件夹在一个略微不同的位置:对于Express 2012 For Web,它是C:\Users\XXXXXXXX\AppData\Local\Microsoft\VWDExpress -不在Visual Studio文件夹中。

我通过清除Visual Studio组件模型缓存解决了这个问题。

只需删除或重命名此文件夹:

%LocalAppData%\Microsoft\VisualStudio\11.0\ComponentModelCache

or

%LocalAppData%\Microsoft\VPDExpress\11.0\ComponentModelCache

并重新启动Visual Studio。

你所拥有的Visual Studio版本由数字指定。

Visual Studio 2012是11.0(如上所示)

Visual Studio 2013是12.0

Visual Studio 2015是14.0

Visual Studio 2017是15.0

Visual Studio 2019是16.0

对于那些不知道的人: %LocalAppData%\与C:\Users\{yourUsername}\AppData\Local相同

对于那些安装了多个版本的Visual Studio的人,例如2012和2013,在重新启动Visual Studio(例如11.0和12.0)之前,删除两个版本的ComponentModelCache可能会有所帮助。

此问题可以通过删除或清除%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache中的所有文件夹和文件来解决

这实际上清除了Visual Studio组件模型缓存。

在Windows 7的机器上,路径是不同的。当您在运行对话框中输入%appdata%时,它会打开文件夹C:\Users\<username>\ appdata \Roaming。

点击“向上”按钮导航到父文件夹并选择文件夹“Local”。

最终路径:C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

在Visual Studio 2013中重新安装IntelliJ IDEA和ReSharper for c#后,我得到了这个错误。

首先,我得到了一个错误的问题与扩展,在这之后,我得到了这个错误:

"未找到与约束契约名称匹配的导出"

我只是删除了ComponentModelCache文件夹并解决了这个错误。

清理文件夹对我没用。所以我选择了“程序和功能”并使用更改按钮来启动Visual Studio 2013的设置。

在设置中,我选择了修复功能,这为我解决了问题。