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

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

我该如何解决这个问题?


当前回答

我在windows phone的Microsoft Visual Studio Express 2012中尝试打开文件时遇到了这个问题。

然后我浏览到

C:\Users\MyUserName\AppData\Local\Microsoft\VPDExpress\11.0\ComponentModelCache

在ComponentModelCache中,我删除了Microsoft.VisualStudio.Default.cache缓存文件。最后,我重新启动了visual studio并重新启动了我的项目。

然后我的问题解决了,我可以打开文件了。

注意:我的操作系统是windows 8。我安装了SDK 8来开发windows phone应用程序

谢谢

其他回答

对于Visual Studio 2012和更高版本,解决方案必须删除ComponentModelCache文件夹的内容:

C:\Users\[username]\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache

Visual Studio 2013

C:\Users\[username]\AppData\Local\Microsoft\VisualStudio\12.0\ComponentModelCache

清理文件夹对我没用。所以我选择了“程序和功能”并使用更改按钮来启动Visual Studio 2013的设置。

在设置中,我选择了修复功能,这为我解决了问题。

我在Windows 8.1的Visual Studio Express 2013上也遇到了同样的问题。

不幸的是,没有“ComponentModelCache”文件夹 当地% AppData % . . \ \ Microsoft \ VisualStudio \ 12.0 \ ComponentModelCache。

我找到了“ComponentModelCache”文件夹 . . \用户【用户名】微软\ AppData \当地\ \ WDExpress \ 12.0

然后把这个文件夹从那里移走解决了这个问题。

删除文件夹没有为我工作,我去控制面板和修复

Visual Studio Installer Projects extensions for VS 2013.

这对我很有效

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

点击查看源代码。