Visual Studio多项目模板重命名名称空间和项目名称

Oma*_*mar 6 templates visual-studio-2010 project-template visual-studio-templates

我已经成功创建了一个多项目解决方案模板.但是,我想要做的是使用解决方案的名称重命名每个项目的开头.

所以我的项目:

  • ProjectOne.A
  • ProjectTwo.B

将被重命名为

  • SolutionName.A
  • SolutionName.B

SolutionName用户在创建项目时的名称在哪里.

我读过以下文章:

但似乎没有人回答我的具体情况.

Dan*_*rod 8

如果您的main .vstemplate(解决方案的一个)类似于下面的示例,您可以使用向导的字典中定义的变量来重命名项目文件夹以及.csproj您想要的任何名称.

<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="2.0.0" Type="ProjectGroup"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <Name>My Web Server Solution with DAL</Name>
        <Description>Creates Projects for Web Server DAL and adds them to a new or existing solution</Description>
        <Icon></Icon>
        <ProjectType>CSharp</ProjectType>
        <ProjectSubType>My</ProjectSubType>
        <DefaultName>WebServer</DefaultName>
        <NumberOfParentCategoriesToRollUp>2</NumberOfParentCategoriesToRollUp>
        <TemplateGroupID>My</TemplateGroupID>
        <TemplateID>My.Dal.Web.Template</TemplateID>
    </TemplateData>
    <TemplateContent>
        <ProjectCollection>
            <ProjectTemplateLink ProjectName="$ModelProjectName$">
                Children\Model\ProjectTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$SharedModelContractsProjectName$">
                Children\SharedModelContracts\ProjectTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$RepositoryInterfacesProjectName$">
                Children\RepositoryInterfaces\ProjectTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$RepositoryImplementationProjectName$">
                Children\RepositoryImplementation\ProjectTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$RepositoryExtensionsProjectName$">
                Children\RepositoryExtensions\ProjectTemplate.vstemplate
            </ProjectTemplateLink>
        </ProjectCollection>
    </TemplateContent>
    <WizardExtension>
        <Assembly>My.WebServerDalExtension.Wizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5c93c79b0feae916</Assembly>
        <FullClassName>My.WebServerDalExtension.Wizard.Controller</FullClassName>
    </WizardExtension>
</VSTemplate>
Run Code Online (Sandbox Code Playgroud)

使用类似的更改添加.vstemplates(项目的.vstemplates)来重命名.csproj文件.