今天早上,我在打开Visual Studio解决方案时遇到了一个问题,当我试图运行它时,它说:
没有找到与约束契约名称匹配的导出
我该如何解决这个问题?
今天早上,我在打开Visual Studio解决方案时遇到了一个问题,当我试图运行它时,它说:
没有找到与约束契约名称匹配的导出
我该如何解决这个问题?
当前回答
这个问题是因为MEF缓存损坏。 安装反馈扩展(或安装任何扩展)将使缓存无效,导致VS重新构建它。
点击查看源代码。
其他回答
删除ComponentModelCache文件夹内容。
%AppData%..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
我通过清除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可能会有所帮助。
这发生在我使用Visual Studio 2013 Web时,在Windows安装了几次更新之后。不幸的是,这篇文章中的建议都没有帮助。
我不得不重新运行安装程序并选择“修复”选项。在那之后(和重启),它又开始工作了。
在某些情况下,您可能需要修复多个版本的Visual Studio。例如,当你单击编辑脚本时,VS 2013中的脚本任务控件会打开VS 2012。
我的观点是: 遵循以上所有的救生技巧,我的经历略有不同;我的是vs2017社区版,安装了一次,我注意到有这三个文件夹:
%LocalAppData%\Microsoft\VisualStudio\15.0 ==> Empty
%LocalAppData%\Microsoft\VisualStudio\7f0c75b0 ==> has only the CoreCon folder
这是一个有ComponentModelCache的:
%LocalAppData%\Microsoft\VisualStudio\15.0_7f0c75b0
仅删除Microsoft.VisualStudio.Default.cache没有效果。
因此,我删除了所有4个文件:.cache, .err, .external和catalogs。 重新启动VS时,问题消失了,出现了第5个文件:
Microsoft.VisualStudio.Default.scan
这真的会像冠军一样工作:
解决方案:尝试从下面的位置删除ComponentModelCache文件夹。
[C:]\Users\[your user name]\AppData\Local\Microsoft\VisualStudio\[Visual Studio version number]
在成功删除之后,重新创建同名的文件夹“ComponentModelCache”。