Visual Studio テンプレートのメタデータ ファイル
各テンプレートには .vstemplate ファイルとメタデータが含まれます。このメタデータが Visual Studio に提供する情報に基づいて、[新しいプロジェクト] ダイアログ ボックスおよび [新しい項目の追加] ダイアログ ボックスにテンプレートが表示され、そのテンプレートからプロジェクトや項目が作成されます。
.vstemplate ファイルの構造
プロジェクト テンプレートの .vstemplate ファイルは、3 つの基本的要素から構成されています。
VSTemplate テンプレートがプロジェクト テンプレートと項目テンプレートのどちらであるかを示し、テンプレートのバージョン番号を提供します。
TemplateData プロジェクト テンプレートを分類し、[新しいプロジェクト] ダイアログ ボックスまたは [新しい項目の追加] ダイアログ ボックスの表示特性を定義します。
TemplateContent テンプレートに含まれるファイルを指定します。
たとえば、次のコードはプロジェクト テンプレートに対するスケルトンの .vstemplate ファイルを表しています。
<VSTemplate Type="Project" Version="2.0.0"
xmlns="https://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
...
</TemplateData>
<TemplateContent>
...
</TemplateContent>
</VSTemplate>
テンプレートのメタデータ ファイルは、Visual Studio に含まれる XML スキーマによって検証されます。 テンプレート XML スキーマの詳細については、「Visual Studio テンプレート スキーマ参照」を参照してください。
拡張要素
テンプレートの基本的な XML 要素の他に、WizardExtension および WizardData 要素を使用して、テンプレートから新しいプロジェクトや項目を作成するテンプレート ウィザードにカスタム機能を追加できます。 このカスタム機能を使用するには、IWizard インターフェイスを実装するアセンブリを作成し、そのアセンブリを .vstemplate ファイルに登録します。 詳細については、「方法 : プロジェクト テンプレートを組み合わせたウィザードを使用する」を参照してください。
基本プロジェクト テンプレート .vstemplate ファイル
次の例に、Visual C# プロジェクトのカスタム テンプレートを示します。
<VSTemplate Type="Project" Version="2.0.0"
xmlns="https://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>My template</Name>
<Description>A basic template.</Description>
<Icon>TemplateIcon.ico</Icon>
<ProjectType>CSharp</ProjectType>
</TemplateData>
<TemplateContent>
<Project File="MyTemplate.csproj">
<ProjectItem>Form1.cs<ProjectItem>
<ProjectItem>Form1.Designer.cs</ProjectItem>
<ProjectItem>Properties\AssemblyInfo.cs</ProjectItem>
<ProjectItem>Properties\Resources.resx</ProjectItem>
<ProjectItem>Properties\Resources.Designer.cs</ProjectItem>
<ProjectItem>Properties\Settings.settings</ProjectItem>
<ProjectItem>Properties\Settings.Designer.cs</ProjectItem>
</Project>
</TemplateContent>
</VSTemplate>