今天早上我在打开我的 Visual Studio 解决方案时遇到了一个问题,当我尝试运行它时,它说:
未找到与约束合同名称匹配的导出
我该如何解决这个问题?
我通过清除 Visual Studio 组件模型缓存解决了这个问题。
只需删除或重命名此文件夹:
%LocalAppData%\Microsoft\VisualStudio\11.0\ComponentModelCache
或者
%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)
只需重命名或删除Microsoft.VisualStudio.Default.cache
上述位置内的文件。
Visual Studio Express 2012 有不同的路径。
Visual Studio 速成版
使用 Visual Studio Express 2012 for Web
我不必重新安装 Visual Studio Express
这真的会像冠军一样工作:
解决方案:尝试从以下位置删除 ComponentModelCache 文件夹。
[C:]\Users\[your user name]\AppData\Local\Microsoft\VisualStudio\[Visual Studio version number]
删除成功后,重新创建同名文件夹“ComponentModelCache”。
可以通过删除或清除所有文件夹和文件来解决此问题%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
这实际上清除了 Visual Studio 组件模型缓存。
在 Windows 7 机器上,路径是不同的。当您%appdata%
在运行对话框中键入时,它会打开文件夹C:\Users\<username>\AppData\Roaming
。
单击“向上”按钮导航到父文件夹并选择文件夹“本地”。
最终路径:C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
删除组件模型缓存对我不起作用(好吧,上面给出的相对目录在我的机器中不存在)。相反,我安装了Visual Studio 2012 Express的扩展。菜单工具→扩展和更新... →在线→选择任何然后下载。这显然会使缓存无效,从而导致 Visual Studio 重新构建它。
这是我的来源。
对于 Visual Studio 2013,您需要从此路径中删除该文件夹:
%AppData%\..\Local\Microsoft\VisualStudio\12.0
对于Visual Studio 2012及更高版本,解决方案必须是删除文件夹的内容ComponentModelCache
:
C:\Users\[username]\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache
视觉工作室 2013
C:\Users\[username]\AppData\Local\Microsoft\VisualStudio\12.0\ComponentModelCache
我在启动 Visual Studio 2013 Ultimate 时遇到了同样的问题,这里的解决方案对我不起作用。我尝试删除提到的文件夹并再次启动 Visual Studio,但它不起作用。
但是我也遇到了其他问题,例如Microsoft.visual studio 包未正确加载以及Page '312e8a59-2712-48a1-863e-0ef4e67961fc' not found VS 2012。后者指的是团队资源管理器窗口中的一条消息,上面写着“找不到页面'somenumber'”。
所以我devenv /setup
在具有管理权限的 Visual Studio 命令提示符下运行。它完成了工作,现在一切都很好。
删除ComponentModelCache文件夹内容。
%AppData%..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
清除文件夹对我不起作用。所以我去了“程序和功能”并使用更改按钮启动 Visual Studio 2013 设置。
在设置中,我选择了修复功能,它为我解决了问题。
我在使用 Windows 8.1 的 Visual Studio Express 2013 时遇到了同样的问题。
不幸的是, %AppData%..\Local\Microsoft\VisualStudio\12.0\ComponentModelCache中没有“ComponentModelCache”文件夹。
我在..\Users[username]\AppData\Local\Microsoft\WDExpress\12.0中找到了“ComponentModelCache”文件夹
并通过从那里删除此文件夹解决了这个问题。
如果你有 VS 2013,你必须去:%LOCALAPPDATA%\Microsoft\VisualStudio\12.0 然后重命名 ComponentModelCache 文件夹。
在微软发布了一些更新(其中一部分是关于 .NET 框架 4.5)后,我遇到了类似的问题。
在 Internet 上,我获得了 Microsoft 知识库文章的以下链接:
Microsoft Visual Studio 2012 更新 (KB2781514)
它对我有用。
在 Windows 安装了几个更新之后,Visual Studio 2013 Web 发生在我身上。不幸的是,这个线程中的任何建议都没有帮助。
我不得不重新运行安装程序并选择“修复”选项。之后(并重新启动)它再次工作。
在某些情况下,您可能需要修复多个版本的 Visual Studio。一个示例是当您单击编辑脚本时 VS 2013 中的脚本任务控件打开 VS 2012。
在 Visual Studio 2015 中重命名 ComponentModelCache 文件夹对我有用,但路径略有不同:
%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
我有 Windows 7 x64 和 Windows 8(安装了预览版)的第二个分区。在使用 Microsoft Visual Studio Express 2012 for Windows Phone 时,我遇到了同样的问题。但是 ComponentModelCache 在这里找到:
C:\Users\Jayaram\AppData\Local\Microsoft\VPDExpress\11.0
当我尝试使用命令提示符时收到“访问被拒绝”消息,我无法删除或重命名:
管理员:VS2012 X64 CrossToolsCommandPrompt
我正在使用 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 文件夹中。
此问题是由于 MEF 缓存损坏造成的。安装反馈扩展(或安装任何扩展)将使缓存无效,导致 VS 重建它。
我在尝试打开文件时在 Microsoft Visual Studio Express 2012 for windows phone 中遇到了这个问题。
然后我浏览到
C:\Users\MyUserName\AppData\Local\Microsoft\VPDExpress\11.0\ComponentModelCache
在 ComponentModelCache 里面我删除了 Microsoft.VisualStudio.Default.cache CACHE 文件。最后我重新启动了视觉工作室并重新打开了我的项目。
然后我的问题解决了,我可以打开文件了。
注意:我的操作系统是 windows 8。我安装了 SDK 8 来开发 windows phone 应用程序
谢谢
两年后,我收到了相同错误消息的错误。不过这次是一个不同的问题,与 .NET Core dnx 相关。
我在 Stack Overflow 上找不到答案,但有一个包含解决方法的 GitHub 问题:https ://github.com/aspnet/Home/issues/1455
以下是解决方法中最重要的部分:
- 删除整个
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\DNX
目录。(据我了解,它属于旧版本的 ASP.NET Core RC1,出于某种原因,即使在 Visual Studio 2015 Update-3 中仍会附带该版本)。- 删除
C:\Users\<user>\AppData\Local\Microsoft\VisualStudio\14.0\devenv.exe.config
文件。- 以管理员身份运行 Visual Studio 2015 的开发人员命令提示符,然后执行
devenv /setup
命令。将生成新的 devenv.exe.config 文件。这次有很多程序集引用了该C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\DotNet
目录。- 运行 Visual Studio 2015 并检查它是否在 Help => About Microsoft Visual Studio 菜单中显示 Microsoft .NET Core Tools (Preview 2) 14.1.20624.0。
感谢olegburov在 GitHub 上的帖子解决了这个问题。
删除文件夹对我不起作用我已经去控制面板并修复了
Visual Studio Installer Projects extensions for VS 2013.
它对我有用
我必须卸载一些外部组件,如 Postsharp 和 Apex,然后它才能工作。我也尝试了选择的解决方案,但它给了我更多错误。
在 Visual Studio 2013 中重新安装IntelliJ IDEA和ReSharper for C#后出现此错误。
首先,我遇到了扩展的错误问题,之后我收到了这个错误:
“未找到与约束合同名称匹配的导出”</p>
我只是删除了文件夹 ComponentModelCache 并解决了这个错误。
我的 2 美分:遵循以上所有救生技巧,我的经历略有不同;我的是 VS 2017 社区版,安装一次,我注意到有所有这 3 个文件夹:
%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 和目录。在重新启动 VS 时,问题消失并出现了第 5 个文件:
Microsoft.VisualStudio.Default.scan
删除ComponentModelCache
对我不起作用。 由于此Microsoft 支持线程上的建议,重新安装 VS 2019 确实如此。
细节