VS2017解决方案模板结构



我已经生成了一个VS(多(项目模板,我在使用时尝试控制 base 层次结构很难。

模板源文件夹/完整解决方案具有以下项目

MyTemplate.UI
MyTemplate.BusinessLogic
MyTemplate.DataModels
MyTemplate.Helpers
MyTemplate.Interfaces
MyTemplate.Services.APIConnector
MyTemplate.Services.AuthProvider_AAD

.vstemplate文件是

<VSTemplate Version="2.0.0" Type="ProjectGroup" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <Name>IoC Template</Name>
        <Description>Template with IoC/project separation</Description>
        <Icon>Icon.ico</Icon>
        <ProjectType>CSharp</ProjectType>
    </TemplateData>
    <TemplateContent>
        <ProjectCollection>
            <ProjectTemplateLink ProjectName="$safeprojectname$.UI" CopyParameters="true">
                    MyTemplate.UIMyTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$safeprojectname$.BusinessLogic" CopyParameters="true">
                    MyTemplate.BusinessLogicMyTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$safeprojectname$.DataModels" CopyParameters="true">
                    MyTemplate.DataModelsMyTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$safeprojectname$.Helpers" CopyParameters="true">
                    MyTemplate.HelpersMyTemplate.vstemplate
            </ProjectTemplateLink>
            <ProjectTemplateLink ProjectName="$safeprojectname$.Interfaces" CopyParameters="true">
                    MyTemplate.InterfacesMyTemplate.vstemplate
            </ProjectTemplateLink>
            <SolutionFolder Name="$safeprojectname$.Services" CopyParameters="true">
                <ProjectTemplateLink ProjectName="$safeprojectname$.APIConnector" CopyParameters="true">
                    MyTemplate.Services.APIConnectorMyTemplate.vstemplate
                </ProjectTemplateLink>
                <ProjectTemplateLink ProjectName="$safeprojectname$.AuthProvider_AAD" CopyParameters="true">
                    MyTemplate.Services.AuthProvider_AADMyTemplate.vstemplate
                </ProjectTemplateLink>
            </SolutionFolder>
        </ProjectCollection>
    </TemplateContent>
</VSTemplate>

现在,当创建解决方案/项目时,所有内容都按预期部署,但是它似乎总是从基本文件夹插入附加的文件夹级别...

所以,可以说我想创建一个项目调用WidgetProject,在VS2017,File-> New -> Project中,选择模板并设置以下

Name = WidgetProject
Location = C:WorkProjects
Solution name = WidgetProject
Create directory for solution = ticked

这将作为文件夹结构生成的是

C:MyProjectsWidgetProjectWidgetProject.sln
                            WidgetProjectWidgetProject.UI
                            WidgetProjectWidgetProject.BusinessLogic
                            WidgetProjectWidgetProject.BusinessLogic
                            WidgetProjectWidgetProject.DataModels
                            WidgetProjectWidgetProject.Helpers
                            WidgetProjectWidgetProject.Interfaces
                            WidgetProjectWidgetProject.ServicesAPIConnector
                            WidgetProjectWidgetProject.ServicesAuthProvider_AAD

所有项目文件夹都是一个额外的层……我想将它们放在与.sln文件相同的文件夹级别。

我确定它只是.vstemplate文件中的一个简单设置,但我无法弄清楚。

Tyia

不幸的是,但是当您根据模板创建一个新项目时,在对话框屏幕中会有一个设置"放置解决方案和项目"。由于看来没有办法从模板定义中控制它。您所能做的:您可以在项目(或项目组(定义的描述节点中写下评论,您更喜欢解决方案的特定设置...

相关内容

  • 没有找到相关文章

最新更新