Visual Studio 2017多项目模板

4
我会尽力帮助您翻译中文。以下是需要翻译的内容:

我已经按照如何在Visual Studio 2013中创建多项目模板?文章的步骤创建了一个模板。我的项目结构如下:ProjectName.Domain,ProjectName.Service,ProjectName.UI,ProjectName.sln,root.vstemplate。

root.vstemplate文件包含以下内容:

root

在每个子项目中都有一个ProjectName.vstemplate文件,其中包含类似于以下内容的内容:

project

我已将 *.zip 文件添加到 /My Documents/Visual Studio 2017/Templates/ProjectTemplates/,但该模板未出现在“新建项目”对话框中。

你解决了这个问题吗? - Johan Franzén
3个回答

1

我在按照示例时也没有成功,该示例使用Version="2.0.0"用于根vstemplate文件。然而,当我按照这篇文章中的示例,该示例使用Version="3.0.0",它就起作用了。

我从文章中复制了这个xml以便快速参考:

<VSTemplate Version="3.0.0" Type="ProjectGroup" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">  
  <TemplateData>  
    <Name>DevEnvExe Mobile Application Template</Name>  
    <Description>UWP based Windows mobile application with online and offline feature</Description>  
    <ProjectType>CSharp</ProjectType>  
    <ProjectSubType>  
    </ProjectSubType>  
    <SortOrder>1000</SortOrder>  
    <CreateNewFolder>true</CreateNewFolder>  
    <DefaultName>DevEnv_Template</DefaultName>  
    <ProvideDefaultName>true</ProvideDefaultName>  
    <LocationField>Enabled</LocationField>  
    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>  
    <Icon>img.png</Icon>  
  </TemplateData>  
  <TemplateContent>  
    <ProjectCollection>  
            <ProjectTemplateLink ProjectName="$projectname$.Offline">  
                Dev_Offline\MyTemplate.vstemplate  
            </ProjectTemplateLink>  
            <ProjectTemplateLink ProjectName="$projectname$.Online">  
                DevEnv_Online\MyTemplate.vstemplate  
            </ProjectTemplateLink>  
        <ProjectTemplateLink ProjectName="$projectname$.Service">  
                DevEnv_Service\MyTemplate.vstemplate  
            </ProjectTemplateLink>  
        <ProjectTemplateLink ProjectName="$projectname$">  
                DevEnv_Template\MyTemplate.vstemplate  
            </ProjectTemplateLink>  
        </ProjectCollection>  
  </TemplateContent>  
</VSTemplate>  

1
您可以在此处使用可用的工具:

https://github.com/taori/Amusoft.VisualStudio.TemplateGenerator

使用桌面客户端或命令行工具进行操作。

build configuration [configurationName]

在桌面客户端中进行如下配置后:

示例 你就可以开始了。

这样,你就可以轻松地定期更新模板。


这个程序有可执行文件吗?我试图在我的电脑上运行它,但桌面客户端项目无法加载。(我在 Github 存储库上记录了一个问题。) - inejwstine
1
@inejwstine 感谢您提出的问题。一旦netcore 3.0 sdk达到RTM状态,我将在github上推送一个可执行文件。我已经在github上回答了您的问题。 - Dbl

0

使用 /installvstemplates 开关运行devenv.exe。这将强制Visual Studio更新项目和项模板。

例如

"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe" /installvstemplates

或者你安装了Visual Studio的任何位置。我建议将您的zip添加到ProjectTemplates中的一个文件夹中,否则您会在项目对话框中搞砸它。


如果您想在批处理文件中使用类似的东西,以下是一个快速示例,演示如何轻松实现。
set VSDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE
echo Updating templates...
START "" /B /W "%VSDir%\devenv.exe" /installvstemplates
echo All done!
pause

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接