我已经查看了很多关于Visual Studio多项目模板的好信息,包括:
我的问题类似于StackOverflow上的以下问题: Visual Studio Multi-Project Templates rename namespaces and project names
以下是使用" MyService"创建新的多项目模板后生成的目录结构。作为名称 - 这是预期的:
- MyService
- Actor
- Api
- Client
- Interfaces
在"演员"目录,我希望项目文件是MyService.Actor.csproj,我最终得到了Actor.csproj。以下是主要模板和演员模板的摘录......(顺便说一下,我使用向导传递服务名称,其他文件按预期命名)
我希望子模板中的TargetFileName=$saferootprojectname$.Actor.csproj
导致项目文件的名称为MyService.Actor.csproj
- 但它是actor.csproj
,所有其他项目文件api.csproj
也是如此,client.csproj
和interfaces.csproj
(没有MyService
前缀)
主要模板
<ProjectCollection>
<SolutionFolder Name="Dependencies">
</SolutionFolder>
<ProjectTemplateLink ProjectName="Actor">
Actor\Actor.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="Api">
Api\Api.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="Client">
Client\Client.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="Interfaces">
Interfaces\Interfaces.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
儿童模板
<Project TargetFileName="$saferootprojectname$.Actor.csproj" File="MyService.Actor.csproj" ReplaceParameters="true">
<ProjectItem ReplaceParameters="true" TargetFileName="App.config">App.config</ProjectItem>
<Folder Name="PackageRoot" TargetFolderName="PackageRoot">
<Folder Name="Config" TargetFolderName="Config">
<ProjectItem ReplaceParameters="true" TargetFileName="Settings.xml">Settings.xml</ProjectItem>
</Folder>
<ProjectItem ReplaceParameters="true" TargetFileName="ServiceManifest.xml">ServiceManifest.xml</ProjectItem>
</Folder>
<ProjectItem ReplaceParameters="true" TargetFileName="packages.config">packages.config</ProjectItem>
<ProjectItem ReplaceParameters="true" TargetFileName="Ping.cs">Ping.cs</ProjectItem>
<ProjectItem ReplaceParameters="true" TargetFileName="Program.cs">Program.cs</ProjectItem>
<Folder Name="Properties" TargetFolderName="Properties">
<ProjectItem ReplaceParameters="true" TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
</Folder>
<ProjectItem ReplaceParameters="true" TargetFileName="ServiceEventSource.cs">ServiceEventSource.cs</ProjectItem>
</Project>
正在使用Visual Studio 2015 Update 3.