今天早上,我在打开Visual Studio解决方案时遇到了一个问题,当我试图运行它时,它说:
没有找到与约束契约名称匹配的导出
我该如何解决这个问题?
今天早上,我在打开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可能会有所帮助。
其他回答
我在微软发布了一些更新后遇到了类似的问题(其中一部分是关于. net framework 4.5的)。
在互联网上,我得到了以下微软知识库文章的链接:
更新Microsoft Visual Studio 2012 (KB2781514)
这对我很管用。
如果你有VS 2013,你必须去:%LOCALAPPDATA%\Microsoft\VisualStudio\12.0 然后重命名ComponentModelCache文件夹。
这发生在我使用Visual Studio 2013 Web时,在Windows安装了几次更新之后。不幸的是,这篇文章中的建议都没有帮助。
我不得不重新运行安装程序并选择“修复”选项。在那之后(和重启),它又开始工作了。
在某些情况下,您可能需要修复多个版本的Visual Studio。例如,当你单击编辑脚本时,VS 2013中的脚本任务控件会打开VS 2012。
我使用的是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 2013的设置。
在设置中,我选择了修复功能,这为我解决了问题。