项目模板:文件替换为TargetFileName

时间:2015-05-31 12:22:03

标签: templates visual-studio-2013 vsix

我试图制作一个模板,其中项目的名称用户提供了"添加新项目"会影响文件名。正如here所述,这应该是相当容易的。但是我在vstemplate文件中做的事情没有像我认为的那样修改文件名。

vstemplate相关部分:

<Project File="ProjectTemplate.csproj" ReplaceParameters="true">
  <ProjectItem ReplaceParameters="true" TargetFileName="Properties\AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
  <ProjectItem ReplaceParameters="true" TargetFileName="$safeprojectname$Class1.cs" OpenInEditor="true">Class1.cs</ProjectItem>
</Project>

我希望在安装了vsix(引用C#项目模板)之后,当使用新创建的模板添加新项目时,创建失败并显示以下错误:enter image description here

我还尝试仅修改csproj文件,但这也不成功:它确实创建了一个项目,但是没有执行所需的替换。

使用vstemplate重命名文件是否可行?

1 个答案:

答案 0 :(得分:1)

csproj - 您在Project中的vstemplate节点中引用的文件 - 文件需要是额外文件,而不是{{1 - 模板项目'解决方案中引用的文件。

还将$ safeprojectname $ Class1.cs的引用添加到额外的csproj - 文件中。 然后它应该按预期工作。

因此,模板项目中的文件结构将是:

csproj