如何在 Visual Studio 2012 或 Visual Studio 2013 中打開舊的 MVC 項目?
我有一個舊的 ASP.NET MVC 2 項目,我不想升級到 MVC 3 或 MVC 4。我正在執行 Windows 8、Visual Studio 2012 和 Visual Studio 2013 的新機器上工作。當我嘗試打開 MVC VS 2012 或 VS 2013 中的 2 項目我收到錯誤:
此項目與目前版本的 Visual Studio 不兼容
然後該項目在解決方案資源管理器中被解除安裝並顯示為灰色。我不想安裝另一個 Visual Studio 副本。如何在新版本的 Visual Studio 中打開舊的 MVC 項目?
在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>從列表中刪除相應的項目指南:
- 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 項目。因此,特定於項目的功能,如“添加控制器、視圖等”。不會出現在菜單中。