ほとんどの部分で機能しているマルチプロジェクトテンプレートがあります。
プロジェクトとそのファイル(正しく名前が付けられている)の両方を生成できますが、プロジェクトの1つに他のプロジェクトへの参照が必要です。テンプレートにこれらの参照を正しく入力させようとしていますが、問題があります。
これが私のマスター(ソリューション)テンプレートファイルです:
<VSTemplate Version="2.0.0" Type="ProjectGroup"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Template</Name>
<Description>Template (includes web and core)</Description>
<Icon>Icon.ico</Icon>
<ProjectType>CSharp</ProjectType>
</TemplateData>
<TemplateContent>
<ProjectCollection>
<ProjectTemplateLink ProjectName="$safeprojectname$.Web">
Template.Project.Web\MyTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="$safeprojectname$.Core">
Template.Project.Core\MyTemplate.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
</VSTemplate>
今、「。Web」プロジェクトの中で、私はよく言いますusing x.Core;
が、そうすると$safreprojectname$.Core
、行はになってしまいx.Web.Core
ます。各プロジェクトが生成されると、$safreprojectname$
変数は現在のプロジェクトに変更されるようです。これは理にかなっています。しかし、ソリューション名またはおそらく他のプロジェクトの名前を取得する方法はありますか?ソリューションファイルに変数を設定しようとしましたが、プロジェクトファイルに渡されていないようです。
誰か提案がありますか?
編集:以下の役立つ回答に加えて、このプロセスを終了した後に書いたブログがあります。それは私が非常に役立つと思ったたくさんの記事にリンクしています:https ://thebhwgroup.com/blog/2013/10/visual-studio-templates