Visual Studio 模板元数据文件
每个模板都包括一个具有元数据的 .vstemplate 文件,该文件为 Visual Studio 提供了在**“新建项目”和“添加新项”**对话框中显示模板并从该模板创建项目或项所需的信息。
.vstemplate 文件的结构
项目模板的 .vstemplate 文件包含以下三个基本元素:
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>