Visual Studio 2012またはVisual Studio 2013 でサポートされていないMVCプロジェクトを開くことは、実際には2つのステップで簡単に実行できます。実際、bytebenderのコメントが示すように、これらの同じ手順が MVC 1プロジェクトに適用され、機能するはずです。ただし、私はそれらをテストしていないため、実際に動作することを保証できません。
まだ行っていない場合は、ステップ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プロジェクトを使用できるようになります。
注意すべき重要な点の1つは、これらの変更後、Visual StudioはこれがASP.NET MVCプロジェクトであることを認識しないことです。したがって、「コントローラの追加、ビューなど」などのプロジェクト固有の機能 メニューには表示されません。