实际上,只需两个步骤,就很容易在Visual Studio 2012或Visual Studio 2013中打开不受支持的MVC项目。实际上,正如bytebender的注释所表明的,这些相同的步骤应适用于MVC 1项目并适用于MVC 1项目。但是,我尚未测试它们,因此不能保证它们确实可以工作。
假设您尚未这样做,那么第一步就是下载并安装MVC 1,MVC 2或MVC 3(在开始安装之前关闭Visual Studio)。
一旦安装了适当的MVC版本,该项目仍将无法在VS 2012中加载。这是因为ASP.NET MVC项目是Web应用程序项目类型的项目子类型。这意味着在Visual Studio中使用该项目时,该项目具有其他可用的加载项和功能。
Visual Studio 2012和Visual Studio 2013在与ASP.NET MVC和其他项目类型的向后兼容性方面都受到限制。不幸的是,安装旧的MVC位并没有改变。Visual Studio 2012与ASP.NET MVC 3和4项目版本兼容。Visual Studio 2013与MVC 4和MVC 5 兼容。
要加载项目,您将必须修改项目文件。为此,右键单击已卸载的项目,然后选择“编辑”。它将以XML文本文件打开项目文件。找到ProjectTypeGuids
看起来像这样的节点:
<ProjectTypeGuids>
{F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
</ProjectTypeGuids>
从列表中删除适当的项目Guid:
- ASP.NET MVC 1:
{603c0e0b-db56-11dc-be95-000d561079b0}
- ASP.NET MVC 2 :(
{F85E285D-A4E0-4152-9332-AB1D724D3325}
如上例所示)
- ASP.NET MVC 3:
{E53F8FEA-EAE0-44A6-8774-FFD645390401}
- ASP.NET MVC 4:
{E3E379DF-F4C6-4180-9B81-6769533ABE47}
删除相应的GUID后,ProjectTypeGuids
外观应类似于以下内容:
<ProjectTypeGuids>
{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
</ProjectTypeGuids>
保存文件并关闭Visual Studio项目文件编辑器。右键单击该项目,然后选择重新加载。如果未重新加载项目,请关闭并重新打开Visual Studio。现在,您应该可以在新版本的Visual Studio中使用旧的ASP.NET MVC项目。
需要注意的重要一件事是,在进行了这些修改之后,Visual Studio并不知道这是一个ASP.NET MVC项目。因此,特定于项目的功能(例如“添加控制器,视图等”)将不会出现在菜单中。