将标记添加到项目模板

可以将语言、平台和项目类型标记添加到项目模板。

标记用于 “新建项目 ”对话框中的两个位置:

  • 标记显示在模板说明下。

    “新建项目”对话框中带有标记的项目模板

  • 标记允许搜索和筛选模板。

    在“新建项目”对话框中搜索和筛选

可以通过更新 .vstemplate XML 文件来添加标记。 可以使用内置于 Visual Studio 中的模板标记或创建自定义模板标记。 模板标记仅显示在 Visual Studio 2019 “新建项目 ”对话框中。 模板标记不会影响模板在早期版本的 Visual Studio 中呈现的方式。

添加或编辑标签

执行下列作之一时,可能需要在项目模板的 .vstemplate XML 中添加或编辑标记:

Syntax

<LanguageTag> Language Name </LanguageTag>
<PlatformTag> Platform Name </PlatformTag>
<ProjectTypeTag> Project Type </ProjectTypeTag>

特性

可以在高级用户方案中使用以下可选属性:

Attribute 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 (必需)对模板进行分类,并定义它在 “新建项目 ”对话框或“ 添加新项 ”对话框中的显示方式。

文本值

除非使用 PackageID 属性,否则需要文本值。

文本提供模板的名称。

内置标记

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 应用 SDK (windowsappsdk 机器学习(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>

另请参阅