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

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

我该如何解决这个问题?


当前回答

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

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

其他回答

我在微软发布了一些更新后遇到了类似的问题(其中一部分是关于. net framework 4.5的)。

在互联网上,我得到了以下微软知识库文章的链接:

更新Microsoft Visual Studio 2012 (KB2781514)

这对我很管用。

重命名ComponentModelCache文件夹在Visual Studio 2015中为我工作,但路径略有不同:

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

删除组件模型缓存对我不起作用(好吧,上面给出的相对目录在我的机器中不存在)。相反,我安装了Visual Studio 2012 Express的扩展。菜单工具→扩展和更新…→在线→任意选择然后下载。这显然使缓存无效,导致Visual Studio重新构建它。

这是我的消息来源。

在启动Visual Studio 2013 Ultimate时,我遇到了同样的问题,这里的解决方案对我不起作用。我试着删除上述文件夹并重新启动Visual Studio,但它不起作用。

然而,我也遇到了其他问题,比如微软。visual studio包没有正确加载,页面“312e8a59-2712-48a1-863e-0ef4e67961fc”没有找到VS 2012。后者指的是团队资源管理器窗口中的一条消息,说“无法找到页面‘somenumber’”。

因此,我以管理权限在Visual Studio命令提示符上运行devenv /setup。它成功了,现在一切都好了。

对于Visual Studio 2012和更高版本,解决方案必须删除ComponentModelCache文件夹的内容:

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

Visual Studio 2013

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