如何在Visual Studio 2017中创建“带有自定义向导的多项目模板”

6
我正在寻求关于如何制作多项目模板(即包含多个项目的可部署解决方案)以及使用自定义向导(以便输入自定义参数)的帮助。
我已经按照"创建多项目模板"完成了多项目模板的制作,这个已经可以使用。
我已经按照"在项目模板中使用向导"制作了我的VSIX文件中的向导,这个也可以使用。
但是,我无法将它们结合起来。我要么可以不使用向导部署我的多项目模板,要么可以通过我的VSIX文件在项目库中显示所有单独的项目模板,并使用工作的自定义向导。
有没有什么办法将这两种方法结合起来?
2个回答

5
我能采用这个博客的答案:(链接)
关键是将所有导出的项目(以ZIP格式提供,需要提取)和根.vstemplate文件打包成一个ZIP。然后,这个ZIP需要成为您的VSIX项目中导入的项目模板。
最后,您的向导需为自己独立的项目,您可以在任何一个单独的项目模板或您的VSIX中引用它。我在我的VSIX中创建了我的向导,但似乎并不起作用。

0

根据Dan的说法,您需要将多项目模板打包成zip文件。

但是,您不需要将向导代码放在单独的项目中,可以将其全部放在VSIX项目中。

在您的VSIX项目中,要将引用添加到您的.zip文件,请打开source.extension.vsixmanifest设计器 -> 资源 -> 新建 -> 选择项目模板类型和源文件系统上的“文件”,然后选择您的zip文件。 如果尚未将您的VSIX项目添加为程序集,请确保也将其添加:新建 -> 选择程序集类型和源“当前解决方案中的一个项目”,然后选择您的VSIX项目。(这可能是为什么它对Dan不起作用的原因)

在您的multi-template.vstemplate文件中,需要像"How to: Use Wizards with Project Templates"中描述的那样使用<WizardExtension>添加对VSIX dll的引用。

此外,如果您想设置默认的自定义参数值,您还可以在<TemplateContent>中添加一个<CustomParameters>部分。欲知详情,请参见:"自定义模板向导的注册元素"
示例:
<CustomParameters>
  <CustomParameter Name="$mycustomparameter1$" Value="value1"/>
  <CustomParameter Name="$mycustomparameter2$" Value="value2"/>
</CustomParameters>

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