ProjectTemplateLink 元素(Visual Studio 模板)

指定多项目模板中一个项目的 .vstemplate 文件的路径。

<VSTemplate><TemplateContent><ProjectCollection><ProjectTemplateLink>

-或-

<VSTemplate><TemplateContent><ProjectCollection><SolutionFolder><ProjectTemplateLink>

语法

<ProjectTemplateLink ProjectName="Name">
    PathToTemplateFile
</ProjectTemplateLink>

特性和元素

以下各部分描述了特性、子元素和父元素。

特性

属性 描述
ProjectName 可选特性。

指定多项目模板中每一个项目的名称。 “ 新建项目 ”对话框无法将名称分配给单个项目。
CopyParameters 使主要组模板中的所有变量可复制到每个链接模板。

链接模板中的参数具有前缀 "$ext_*$"。 例如,如果在父组模板中,参数具有值 ExampleProject1,当链接模板获得要执行的轮次时,它将获取参数,该参数$ext_projectname$是父组模板的参数的副本$projectname$$projectname$

这使链接模板能够共享一些只能在父组模板中方便地创建的公用参数。

此特性为可选特性,未包含此特性时,它将自动默认为 false

在 Visual Studio 2013 Update 2 中引入。 若要引用正确的产品版本,请参阅 Visual Studio 2013 SDK Update 2 中提供的引用程序集。

子元素

无。

父元素

元素 说明
ProjectCollection 指定多项目模板的组织和内容。
SolutionFolder 对多项目模板中的项目进行分组。

文本值

需要一个文本值。

此文本指定模板的 .vstemplate 文件的路径。

注解

多项目模板用作两个或多个项目的容器。 该ProjectTemplateLink元素用于指定模板中某个项目的 .vstemplate 文件的位置多项目模板的 .vstemplate 文件包含模板中每个项目的一个ProjectTemplateLink元素。 有关多项目模板的详细信息,请参阅 如何:创建多项目模板

示例

此示例显示了一个简单的多项目根 .vstemplate 文件。 在此示例中,模板包含两个项目:My Windows ApplicationMy Class Library。 元素 ProjectName 上的 ProjectTemplateLink 属性设置 Visual Studio 分配此项目的名称。 ProjectName如果该属性不存在,则 .vstemplate 文件的名称将用作项目名称。

<VSTemplate Version="3.0.0" Type="ProjectGroup"
    xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <Name>Multi-Project Template Sample</Name>
        <Description>An example of a multi-project template</Description>
        <Icon>Icon.ico</Icon>
        <ProjectType>VisualBasic</ProjectType>
    </TemplateData>
    <TemplateContent>
        <ProjectCollection>
            <ProjectTemplateLink ProjectName="My Windows Application">
                WindowsApp\MyTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="My Class Library" CopyParameters="true">
                ClassLib\MyTemplate.vstemplate
            </ProjectTemplateLink>
        </ProjectCollection>
    </TemplateContent>
</VSTemplate>

另请参阅