VS 2010 でマルチプロジェクト テンプレートを作成しました。作成されたフォルダー構造は次のとおりです。
Service1
MyService.Service1.CommunicationLayer
-->MyService.Service1.CommunicationLayer.csproj
MyService.Service1.DataAccessLayer
-->MyService.Service1.DataAccessLayer.csproj
MyService.Service1.ServiceLayer
-->MyService.Service1.ServiceLayer.csproj
しかし、次のような構造が必要です:
Service1
Communication
-->MyService.Service1.CommunicationLayer.csproj DataAccess
--
>MyService.Service1.DataAccessLayer.csproj
Services
-->MyService.Service1.ServiceLayer.csproj
また、SolutionFolder 名をService1に設定する必要があります。これは、ユーザーが提供するプロジェクトの名前になります。
私が使用している .vstemplate ファイルは次のとおりです。
`<!--Outer .vstemplate file -->
<VSTemplate Version="2.0.0" Type="ProjectGroup"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>DataAccessService</Name>
<Description>Data Access Service Template</Description>
<ProjectType>CSharp</ProjectType>
<Icon>__TemplateIcon.ico</Icon>
<CreateNewFolder>true</CreateNewFolder>
<ProvideDefaultName >true</ProvideDefaultName>
<DefaultName>DALService</DefaultName>
</TemplateData>
<TemplateContent>
<ProjectCollection>
<ProjectTemplateLink ProjectName="MyService.$safeprojectname$.CommunicationLayer">Communication\Communication.vstemplate</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="MyService.$safeprojectname$.DataAccessLayer">DataAccess\DataAccess.vstemplate</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="MyService.$safeprojectname$.ServiceLayer">Services\Services.vstemplate</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
</VSTemplate>`
どんな助けでも大歓迎です。