VSの「プロジェクトの種類がこのインストールでサポートされていません」(ProjectTypeGuids)
SubSonic3.0のソリューションを開こうとして「プロジェクトの種類がこのインストールでサポートされていません」というエラーが出ていた問題ですが、プロジェクトファイルの「*.csproj(C#の場合)」を見たら原因がわかりました。
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> (もろもろ) <ProjectTypeGuids>{603c0e0b-db56-11dc-be95-000d561079b0};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> (もろもろ) </PropertyGroup>
プロジェクトの属性を表す「ProjectTypeGuids」に「{603c0e0b-db56-11dc-be95-000d561079b0}」が含まれていました。これは「ASP.NET MVC」のプロジェクトを表すGUIDでした。
そんなわけで、これを削除したら開けました。でもSystem.Web.MVCのアセンブリ参照できないのでコンパイルエラーになりました。後で、ASP.NET MVCを入れてやり直してみます。
ちなみに、主要なProjectTypeGuidsは以下のような感じです。
- プロジェクトファイルのProjectTypeGuids属性
- {66A26720-8FB5-11D2-AA7E-00C04F688DDE}:ソリューション フォルダ
- {F184B08F-C81C-45F6-A57F-5ABD9991F28F}:Visual Basic
- {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}:C#
- {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}:C++
- {E24C65DC-7377-472b-9ABA-BC803B73C61A}:Web プロジェクト
- {3AC096D0-A1C2-E12C-1390-A8335801FDAB}:テストプロジェクト
他のGUIDについてはList of known project type Guidsが詳しいです。