プロジェクトと項目のカスタム テンプレートを作成する

Visual Studio SDK には、カスタム プロジェクト テンプレートとカスタム項目テンプレートを作成するプロジェクト テンプレートが含まれています。 これらのテンプレートには、いくつかの一般的なパラメーター置換や、zip ファイルとしてのビルドが含まれます。 これらは自動的にデプロイされず、実験用インスタンスでは使用できません。 生成された zip ファイルをユーザー テンプレート ディレクトリにコピーする必要があります。

テンプレート作成テンプレートを使用すると、より大きな拡張機能にテンプレートを含めることができます。 これにより、ソース ファイルにバージョン コントロールを実装し、テンプレート プロジェクトのグループを 1 つの VSIX パッケージに組み込むことができます。

NuGet パッケージをインストールするようにテンプレートを構成することもできます。 詳細については、Visual Studio テンプレートの NuGet パッケージに関する記事を参照してください。

基本的なテンプレート作成シナリオでは、エクスポート テンプレート ウィザードを使用して、圧縮ファイルに出力します。 基本的なテンプレート作成の詳細については、プロジェクトと項目のテンプレートの作成に関する記事を参照してください。

Note

Visual Studio 2017 以降では、カスタム プロジェクトテンプレートと項目テンプレートのスキャンは実行されなくなりました。 代わりに、拡張機能で、これらのテンプレートのインストール場所を記述するテンプレート マニフェスト ファイルを提供する必要があります。 Visual Studio を使用して VSIX 拡張機能を更新できます。 MSI を使用して拡張機能を展開する場合は、テンプレート マニフェスト ファイルを手動で生成する必要があります。 詳細については、プロジェクトおよび項目のカスタム テンプレートの Visual Studio 2017 へのアップグレードに関する記事を参照してください。 テンプレート マニフェスト スキーマについては、「Visual Studio テンプレート マニフェスト スキーマ リファレンス」で説明されています。

プロジェクト テンプレートを作成

  1. プロジェクト テンプレート プロジェクトを作成します。 プロジェクト テンプレートは、[新しいプロジェクト] ダイアログで「プロジェクト テンプレート」と検索し、C# または Visual Basic のバージョンを選択すると検索できます。

    このテンプレートでは、クラス ファイル、アイコン、ファイル、ProjectTemplate.vbproj または ProjectTemplate.csproj という名前の編集可能なプロジェクト ファイル、および他のプロジェクトの種類 (resources.resx ファイル、AssemblyInfo ファイル、.settingsファイルなど) によって通常生成される一部のファイルが生成されます。.vstemplate 各コード ファイルには、必要に応じて一般的なパラメーター置換が含まれています。

    Screenshot of project template project selection.

  2. プロジェクトの必要に応じて、プロジェクトの項目を追加および削除します。 編集可能なプロジェクト ファイル、AssemblyInfo ファイル、またはファイルを.vstemplate削除しないでください。

  3. 追加と削除を .vstemplate 反映するようにファイルを更新します。 Project 要素には、テンプレートに含める各ファイルの ProjectItem 要素が含まれている必要があります。

  4. コード ファイルやその他のユーザー向けコンテンツを変更し、適切なパラメーター置換を追加します。

  5. 生成されたコンテンツを必要に応じて変更します。

  6. プロジェクトをビルドします。

    Visual Studio によって、テンプレートを .zip 含むファイルが作成されます。 これはデプロイされず、実験用インスタンスでは使用できません。

項目テンプレートを作成する

  1. 項目テンプレート プロジェクトを作成します。

    このテンプレートは、クラス ファイル、アイコン、.vstemplateファイル、および AssemblyInfo ファイルを生成します。 クラス ファイルには、一般的なパラメーター置換がいくつか含まれています。

  2. プロジェクトの必要に応じて、プロジェクトの項目を追加および削除します。

  3. 追加と削除を .vstemplate 反映するようにファイルを更新します。 Project 要素には、テンプレートに含める各ファイルの ProjectItem 要素が含まれている必要があります。

  4. コード ファイルやその他のユーザー向けコンテンツを変更し、適切なパラメーター置換を追加します。

  5. 生成されたコンテンツを必要に応じて変更します。

  6. プロジェクトをビルドします。

    Visual Studio によって、テンプレートを含む圧縮ファイルが作成されます。 これはデプロイされず、実験用インスタンスでは使用できません。

展開

プロジェクトまたは項目テンプレートを配置するには

  1. VSIX プロジェクトを作成する。 詳細については、「VSIX プロジェクト テンプレート」を参照してください。

  2. VSIX プロジェクトをスタートアップ プロジェクトとして設定します。 ソリューション エクスプローラーで VSIX プロジェクト ノードを選択し、[スタートアップ プロジェクトに設定] を選びます。

  3. プロジェクト テンプレート プロジェクトを VSIX プロジェクトのアセットとして設定します。 .vsixmanifest ファイルを開きます。 [アセット] タブに移動して、[新規] を選択します。

    1. [種類] フィールドを Microsoft.VisualStudio.ProjectTemplate または Microsoft.VisualStudio.ItemTemplate に設定します。

    2. ソースに、[現在のソリューション内のプロジェクト] オプションを選択し、テンプレートが含まれているプロジェクトを選択します。

  4. ソリューションをビルドして、F5 キーを押します。 実験用インスタンスが表示されます。

  5. プロジェクト テンプレート プロジェクトの場合、[新しいプロジェクト] ダイアログ ([ファイル]>[新規]>[プロジェクト]) の Visual C# または Visual Basic ノードにプロジェクト テンプレートが一覧表示されます。 項目テンプレート プロジェクトの場合は、項目テンプレートが [新しい項目の追加] ダイアログに一覧表示されます。 [新しい項目の追加] ダイアログを表示するには、ソリューション エクスプローラーからプロジェクト ノードを選択し、[追加]>[新しい項目] を選択します。

関連項目