错误消息“找不到与约束合同名称匹配的导出”
今天早上我打开我的Visual Studio解决scheme时遇到了一个问题,当我试图运行它时,它说:
找不到与约束合同名称匹配的导出
我该如何解决这个问题?
我通过清理Visual Studio组件模型caching来解决这个问题。
只需删除或重命名此文件夹:
%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
对于那些不知道的: %LocalAppData%\
和C:\Users\{yourUsername}\AppData\Local
无需重命名或删除整个文件夹:
(%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache)
只需重命名或删除上述位置内的Microsoft.VisualStudio.Default.cache
文件即可。
Visual Studio Express 2012有不同的path。
Visual Studio Express
- … \用户\ {用户} \应用程序数据\本地\微软\ WDExpress \ 11.0 \ ComponentModelCache
使用Visual Studio Express 2012 for Web
- … \用户\ {用户} \应用程序数据\本地\微软\ VWDExpress \ 11.0 \ ComponentModelCache
我不必重新安装Visual Studio Express
删除组件模型caching对我不起作用(以及上面给出的相对目录在我的机器中不存在)。 什么是安装VS 2012 Express的扩展。 工具>扩展和更新…>在线>select任何然后下载。 这显然无效caching导致VS重build它。
这是我的来源 。
此问题可以通过删除或清除%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
所有文件夹和文件来解决
这实际上清除了Visual Studio组件模型caching。
在Windows 7机器中,path是不同的。 当input%appdata%
n RUN命令时,它将打开文件夹C:\Users\<username>\AppData\Roaming
点击“向上”button导航到父文件夹并select文件夹“本地”
最终path: C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
感谢@Simon B.Robert
对于VS2013,您需要从该path中删除该文件夹
%APPDATA%.. \本地\微软\ VisualStudio的\ 12.0
对于Visual Studio 2012及更高版本,解决scheme必须删除文件夹ComponentModelCache
的内容:
C:\Users\[username]\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache
Visual Studio 2013
C:\Users\[username]\AppData\Local\Microsoft\VisualStudio\12.0\ComponentModelCache
启动VS 2013 Ultimate时遇到了同样的问题。 这里的解决scheme并不适合我。 我试图删除提到的文件夹,并再次启动VS,但没有奏效。
不过,我也有其他的问题,像这样Microsoft.visual工作室包没有正确加载 ,也没有发现这个VS'2012年 。 后者在Team Explorer窗口中提到一条消息,说“找不到页面somenumber”。
所以我运行带有pipe理权限的VS命令提示符下的devenv /setup
。 它做了这个工作,现在一切都很好。
删除ComponentModelCache文件夹内容。
%AppData%..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
这真的就像一个冠军:
解决scheme:尝试从下面的位置删除ComponentModelCache文件夹。
[C:] \ Users [你的用户名] \ AppData \ Local \ Microsoft \ VisualStudio [和版本号]
并成功删除后重新创build相同名称的文件夹“ComponentModelCache”。
清除文件夹不适合我。 所以我去了“程序和function”,并使用更改button来启动Visual Studio 2013安装程序。
在设置我select修复function,并为我解决了这个问题。
我有与Windows 8.1的Visual Studio Express 2013相同的问题。
不幸的是,中没有“ComponentModelCache”文件夹
%APPDATA%.. \本地\微软\ VisualStudio的\ 12.0 \ ComponentModelCache。
我在其中find了“ComponentModelCache”文件夹
.. \用户[名] \ AppData \本地\微软\ WDExpress \ 12.0
并通过从那里删除此文件夹解决了这个问题。
如果您有VS 2013,则必须转到: %LOCALAPPDATA%\ Microsoft \ VisualStudio \ 12.0,然后重命名ComponentModelCache文件夹。
在微软发布一些更新之后,我遇到了一个类似的问题(其中一些关于.net framework 4.5的问题)。
在互联网上我有以下链接到微软KB:
Microsoft Visual Studio 2012更新(KB2781514)
它为我工作
重命名ComponentModelCache文件夹在Visual Studio 2015中适用于我,但是path略有不同:
%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
我有Windows 7 x64的Windows 8(预览安装)的第二个分区。 在使用Microsoft Visual Studio Express 2012 for Windows Phone的同时,我也遇到了同样的问题。 但是在这里findComponentModelCache:
C:\ Users \用户贾亚拉姆\应用程序数据\本地\微软\ VPDExpress \ 11.0
我无法删除或重命名,因为我尝试使用命令提示符时遇到“访问被拒绝”消息:
pipe理员:VS2012 X64 CrossToolsCommandPrompt
在Windows安装了几个更新之后,Visual Studio 2013 Web发生了这种情况。 不幸的是没有在这个线程的build议帮助。
我不得不重新运行安装程序并select“修复”选项。 之后(和重新启动),它再次工作。
我正在使用VS2012。 在安装了VS2013 web express之后,当我想运行或打开VS2012中的任何项目时,它显示出以下错误:“ 找不到与约束合同名称匹配的导出” 。 我也尝试清除ComponentModelCache上面的解决scheme,但我找不到该文件夹。 我只是解决了我的问题: 修复VS2012
编辑:对于该软件的Express版本,您需要的文件夹位置稍有不同:对于Express 2012 for Web,它是C:\ Users \ XXXXXXXX \ AppData \ Local \ Microsoft \ VWDExpress – 不在Visual Studio中夹。
此问题是由于MEFcaching损坏。 安装反馈扩展(或安装任何扩展)将使caching失效,导致VS重build它。
点击来源。
在尝试打开文件时,我在Microsoft Visual Studio Express 2012 for windows phone中遇到了这个问题。
然后我浏览
C:\用户\ MyUserNameinput\应用程序数据\本地\微软\ VPDExpress \ 11.0 \ ComponentModelCache
和ComponentModelCache里面我删除了Microsoft.VisualStudio.Default.cache CACHE文件。 最后我重新启动视觉工作室,并重新打开我的项目。
然后我的问题解决了,我能打开文件。
注:我的操作系统是Windows 8.而我安装SDK 8开发Windows Phone应用程序
谢谢
我不得不卸载一些外部组件,如Postsharp和Apex,然后它的工作。 我也试过select的解决scheme,但它给了我更多的错误。
删除文件夹没有为我工作,我已经去控制面板和修复
Visual Studio Installer Projects extensions for VS 2013.
它为我工作
在Visual Studio 13中重新安装intellij resharper c#后,我得到了这个错误。首先我得到了扩展错误问题,之后,我得到这个错误:“没有find匹配约束合同名称的导出”
只需删除文件夹ComponentModelCache并解决此错误。
我收到了同样的错误信息错误 – 两年后。 这次是一个不同的问题,但是.net核心DNN的事情。
我无法在stackoverflow上find答案,但在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,由于某些原因,即使在VS2015下仍然出货
更新-3)。- 删除C:\ Users \ \ AppData \ Local \ Microsoft \ VisualStudio \ 14.0 \ devenv.exe.config文件。
- 以pipe理员身份运行VS2015的开发人员命令提示符,并执行devenv / setup命令。 生成新的devenv.exe.config文件。 这次有很多程序集引用了
C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ Extensions \ Microsoft \ DotNet目录。- 运行VS 2015并检查它是否显示帮助中的Microsoft .NET Core Tools(Preview 2)14.1.20624.0 =>关于Microsoft Visual
工作室菜单。
感谢olegburov在github上发表的文章。