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 Application
と My 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>