我希望能够为包含以下两个项目的解决方案创建多项目模板(其中接口应包含对业务层的引用):
<proj_name>.interface<proj_name>.business. 通常,您可以包含$safeprojectname$,其中包括:
用户在"新建项目"对话框中提供的名称
但是,正如文章中指出的构建一个多项目的可视化工作室模板
这里的问题是在每个子模板中,$ safeprojectname $代表当前项目名称.需要有一种方法从父模板传入根$ safeprojectname $.
我试图实施该解决方案在这太问题建议VS 2010多项目模板:项目间引用,通过使用CustomParameters,但我遇到了麻烦.
我的拉链模板目录如下所示:
您可以下载整个目录,但这里有一些选择的代码段
MultiTemplate.vstemplate
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="ProjectGroup">
<TemplateData><!--Removed for brevity --></TemplateData>
<TemplateContent>
<CustomParameters>
<CustomParameter Name="$SolutionName$" Value="$safeprojectname$"/>
</CustomParameters>
<ProjectCollection>
<ProjectTemplateLink ProjectName="$safeprojectname$.Interface">
Interface\InterfaceTemplate.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="$safeprojectname$.Business">
Business\BusinessTemplate.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
</VSTemplate>
Run Code Online (Sandbox Code Playgroud)
接口\ InterfaceTemplate.vstemplate
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Project">
<TemplateData><!--Removed for brevity --></TemplateData>
<TemplateContent>
<Project TargetFileName="MyTemplate.Interface.csproj" …Run Code Online (Sandbox Code Playgroud)