ProjectTemplateLink 要素 (Visual Studio テンプレート)

複数プロジェクトのテンプレート内の 1 つのプロジェクトの .vstemplate ファイルのパスを指定します。

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

または

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

構文

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

属性と要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性 説明
ProjectName 省略可能な属性です。

複数プロジェクトのテンプレートにある各プロジェクトに個別の名前を指定します。 [新しいプロジェクト] ダイアログ ボックスでは、個々のプロジェクトに名前を割り当てることはできません。
CopyParameters メインのグループ テンプレート内のすべての変数を、リンクされたテンプレートそれぞれにコピーできるようにします。

リンクされたテンプレート内のパラメーターには、プレフィックス "$ext_*$" が付きます。 たとえば、親のグループ テンプレートでパラメーター $projectname$ の値が ExampleProject1 である場合、リンクされたテンプレートは自身が実行される番になると、親のグループ テンプレートの $projectname$ パラメーターのコピーであるパラメーター $ext_projectname$ を取得します。

これにより、リンクされたテンプレートは、親のグループ テンプレートでのみ簡単に作成できる一部の共通パラメーターを共有できるようになります。

この属性は省略可能であり、省略した場合は自動的に false に設定されます。

Visual Studio 2013 更新プログラム 2 で導入されました。 正しい製品バージョンを参照するには、Visual Studio 2013 SDK Update 2 で配信されるアセンブリの参照に関するページを参照してください。

子要素

なし。

親要素

要素 説明
ProjectCollection 複数プロジェクトのテンプレートの構成と内容を指定します。
SolutionFolder 複数プロジェクトのテンプレートをグループ化します。

Text 値

テキスト値が必要です。

このテキストでは、テンプレートの .vstemplate ファイルのパスを指定します。

解説

複数プロジェクトのテンプレートは、2 つ以上のプロジェクトのコンテナーとして機能します。 ProjectTemplateLink 要素は、テンプレート内のいずれかのプロジェクトの .vstemplate ファイルの場所を指定するために使用されます。 複数プロジェクトのテンプレートの .vstemplate ファイルには、そのテンプレート内のプロジェクトごとに 1 つの ProjectTemplateLink 要素が含まれています。 複数プロジェクトのテンプレートの詳細については、「方法 : 複数プロジェクトのテンプレートを作成する」を参照してください。

この例は、単純な複数プロジェクトのルート .vstemplate ファイルを示しています。 この例では、テンプレートには My Windows ApplicationMy Class Library の 2 つのプロジェクトが含まれています。 ProjectTemplateLink 要素の ProjectName 属性は、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>

関連項目