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

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

我该如何解决这个问题?


当前回答

删除ComponentModelCache对我不起作用。重新安装VS 2019要感谢微软支持线程上的建议。

细节

这似乎是一个已知的错误,微软已经修复了(截至2020年7月1日) 使用Visual Studio安装程序从VS2019 Pro 16.2(我想是?)升级到16.4.2后经验丰富 试图启动nuget控制台和nuget包管理器时显示错误

其他回答

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

这是我的消息来源。

我不得不卸载一些外部组件,如Postsharp和Apex,然后它就工作了。我也尝试了选择的解决方案,但它给了我更多的错误。

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

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

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

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

无需重命名或删除整个文件夹:

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

只需重命名或删除上述位置中的Microsoft.VisualStudio.Default.cache文件。

这个问题是因为MEF缓存损坏。 安装反馈扩展(或安装任何扩展)将使缓存无效,导致VS重新构建它。

点击查看源代码。