我在我的Visual Studio 2012中安装了“ASP.NET和Web工具2013.1”。
我有一个解决方案,其中包含一个带有以下项目类型GUID的ASP.NET MVC 4项目:
<ProjectTypeGuids>
{E3E379DF-F4C6-4180-9B81-6769533ABE47};
{349c5851-65df-11da-9384-00065b846f21};
{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
</ProjectTypeGuids>
这些 GUID 用于: ASP.NET MVC 4.0 Web 应用程序 Windows (C#)
这是创建新的 ASP.NET 4.0 项目时的常规配置。并且它可以正常工作。
问题在于,由于某种奇怪的原因,每当我打开解决方案时,第一个 GUID(ASP.NET MVC 4.0)都会从 .csproj 文件中删除,因此我失去了所有相关的工具。
无论我如何尝试编辑:
- 如果我关闭解决方案并手动编辑此文件以添加缺失的 GUID,重新打开时 GUID 将被删除。 - 如果我卸载该项目、编辑 .csproj 并重新加载它,则 GUID 也将被删除。 - 我使用版本控制(SVN)管理此项目,因此我也尝试过在关闭 VS、使用 Tortoise 更新 SVN 中的文件后重新打开解决方案。你知道吗?重新打开解决方案时 GUID 被删除了!
如果我创建一个带有 ASP.NET MVC 4.0 项目的新解决方案,它可以正常工作,并且 GUID 保持不变。
有什么想法为什么会发生这种情况以及我如何解决它?
更新
如果我以安全模式打开 VS,就不会出现这种情况。所以我怀疑这一定是某个扩展造成的,但我不知道如何发现是哪个扩展。有没有一种方法可以知道哪个扩展可能会对此负责(除了卸载/尝试循环……)?