我正在尝试创建一个Visual Studio ItemTemplate
,这样每当我们在Web应用程序项目中添加aspx
文件时,还应该添加一个文本文件以及aspx
作为子文件-文件。我成功地创建了ItemTemplate
。当我们使用该自定义aspx
添加新的ItemTemplate
文件时,它也会添加txt
文件,但它不会显示为aspx
文件的子项。< / p>
正如您所看到的WebForm1.aspx.txt
此文件未显示为WebForm1.aspx
文件的子项目,这意味着如果您删除WebForm1.aspx
,该文件将显示为独立项目文件,它不会删除txt
文件。
这是vstemplate
文件,
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
<TemplateData>
<DefaultName>WebForm.aspx</DefaultName>
<Name>WebForm with Text File</Name>
<Description><No description available></Description>
<ProjectType>CSharp</ProjectType>
<SortOrder>10</SortOrder>
<Icon>__TemplateIcon.ico</Icon>
</TemplateData>
<TemplateContent>
<References />
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx" ReplaceParameters="true">WebForm1.aspx</ProjectItem>
<ProjectItem SubType="ASPXCodeBehind" TargetFileName="$fileinputname$.aspx.cs" ReplaceParameters="true">WebForm1.aspx.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx.designer.cs" ReplaceParameters="true">WebForm1.aspx.designer.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx.txt" ReplaceParameters="true">WebForm1.aspx.txt</ProjectItem>
</TemplateContent>
</VSTemplate>
答案 0 :(得分:0)
好的答案似乎很简单,这question实际上帮助了我。
我们只需要在TargetFileName
属性
E.g。 TargetFileName="$fileinputname$.aspx\$fileinputname$.aspx.txt"
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
<TemplateData>
<DefaultName>WebForm.aspx</DefaultName>
<Name>WebForm with Text File</Name>
<Description><No description available></Description>
<ProjectType>CSharp</ProjectType>
<SortOrder>10</SortOrder>
<Icon>__TemplateIcon.ico</Icon>
</TemplateData>
<TemplateContent>
<References />
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx" ReplaceParameters="true">WebForm1.aspx</ProjectItem>
<ProjectItem SubType="ASPXCodeBehind" TargetFileName="$fileinputname$.aspx.cs" ReplaceParameters="true">WebForm1.aspx.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx.designer.cs" ReplaceParameters="true">WebForm1.aspx.designer.cs</ProjectItem>
<ProjectItem SubType="" TargetFileName="$fileinputname$.aspx\$fileinputname$.aspx.txt" ReplaceParameters="true">WebForm1.aspx.txt</ProjectItem>
</TemplateContent>
</VSTemplate>