言語、プラットフォーム、プロジェクトの種類のタグをプロジェクト テンプレートに追加できます。
タグは、[ 新しいプロジェクト ] ダイアログ ボックスの 2 つの場所で使用されます。
テンプレートの説明の下にタグが表示されます。
タグを使用すると、テンプレートを検索およびフィルター処理できます。
.vstemplate XML ファイルを更新することで、タグを追加できます。 Visual Studio に組み込まれているテンプレート タグを使用するか、カスタム テンプレート タグを作成できます。 テンプレート タグは、Visual Studio 2019 の [新しいプロジェクト ] ダイアログ ボックスにのみ表示されます。 テンプレート タグは、以前のバージョンの Visual Studio でのテンプレートのレンダリング方法には影響しません。
タグを追加または編集する
次のいずれかのアクションを実行するときに、プロジェクト テンプレートの .vstemplate XML でタグを追加または編集できます。
- テンプレートのエクスポート ウィザードを使用して、新しいプロジェクト テンプレートを作成します。
- 既存のプロジェクト テンプレートを更新します。
- 新しい VSIX プロジェクト テンプレートを作成します。
構文
<LanguageTag> Language Name </LanguageTag>
<PlatformTag> Platform Name </PlatformTag>
<ProjectTypeTag> Project Type </ProjectTypeTag>
Attributes
高度なユーザー シナリオでは、次の省略可能な属性を使用できます。
| 特性 | Description |
|---|---|
Package |
Visual Studio パッケージ ID を指定する GUID。 |
ID |
Visual Studio リソース ID を指定します。 |
Syntax:
<LanguageTag Package="{PackageID}" ID="ResourceID" />
<PlatformTag Package="{PackageID}" ID="ResourceID" />
<ProjectTypeTag Package="{PackageID}" ID="ResourceID" />
Elements
子要素
なし。
親要素
| 要素 | Description |
|---|---|
| TemplateData | (必須)テンプレートを分類し、[ 新しいプロジェクト ] ダイアログ ボックスまたは [ 新しい項目の追加 ] ダイアログ ボックスでの表示方法を定義します。 |
テキスト値
Package属性とID属性を使用しない限り、テキスト値が必要です。
テキストはテンプレートの名前を提供します。
組み込みのタグ
Visual Studio には、組み込みのタグの一覧が用意されています。 組み込みタグを追加すると、タグによってローカライズされたリソースがレンダリングされます。
次の一覧は、Visual Studio で使用できる組み込みのタグを示しています。 対応する値はかっこで囲んで表示されます。
| 言語タグ | プラットフォーム タグ | プロジェクトの種類のタグ |
|---|---|---|
C++ (cpp) |
Android (android) |
クラウド (cloud) |
C# (csharp) |
Azure (azure) |
コンソール (console) |
F# (fsharp) |
iOS (ios) |
デスクトップ (desktop) |
Java (java) |
Linux (linux) |
拡張機能 (extension) |
JavaScript (javascript) |
macOS (macos) |
ゲーム (games) |
Python (python) |
tvOS (tvos) |
IoT (iot) |
クエリ言語 (querylanguage) |
Windows (windows) |
ライブラリ (library) |
TypeScript (typescript) |
Windows App SDK (windowsappsdk) |
Machine Learning (machinelearning) |
Visual Basic (visualbasic) |
Xbox (xbox) |
モバイル (mobile) |
XAML (xaml) |
Office (office) |
|
その他 (other) |
||
サービス (service) |
||
テスト (test) |
||
UWP (uwp) |
||
Web (web) |
||
WinUI (winui) |
Example
次の例は、Visual C# アプリケーションのプロジェクト テンプレートのメタデータを示しています。
<VSTemplate Type="Project" Version="3.0.0"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>My template</Name>
<Description>A basic template</Description>
<Icon>TemplateIcon.ico</Icon>
<ProjectType>csharp</ProjectType>
<LanguageTag>csharp</LanguageTag>
<PlatformTag>windows</PlatformTag>
<PlatformTag>linux</PlatformTag>
<PlatformTag>My Platform</PlatformTag>
<ProjectTypeTag>console</ProjectTypeTag>
<ProjectTypeTag>desktop</ProjectTypeTag>
</TemplateData>
<TemplateContent>
<Project File="MyTemplate.csproj">
<ProjectItem>Form1.cs<ProjectItem>
<ProjectItem>Form1.Designer.cs</ProjectItem>
<ProjectItem>Program.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>