今天早上,我在打开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。安装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文件夹中。

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

Visual Studio Installer Projects extensions for VS 2013.

这对我很有效

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

细节

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

重命名ComponentModelCache文件夹在Visual Studio 2015中为我工作,但路径略有不同:

%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache

我有Windows 7 x64和Windows 8(预览安装)的第二个分区。在使用Windows Phone的Microsoft Visual Studio Express 2012时,我也遇到了同样的问题。但是ComponentModelCache可以在这里找到:

本地用户目录C: \ \ Jayaram AppData \ \微软\ VPDExpress 11。

当我尝试使用命令提示符时,我无法删除或重命名,因为我得到了“访问被拒绝”的消息:

管理员:VS2012 X64 CrossToolsCommandPrompt