簡體   English   中英

Visual Studio:如何將代碼模板添加到項目

[英]Visual Studio: How to add code templates to project

我想創建一個功能,使我可以自動向C#項目中添加一些相關文件。 我想基於模板創建一個新表單,並創建一個XML文件並將其添加到項目中的單獨子目錄中。 我將如何去做呢? 我看到Visual Studio 2008中提供了向導,加載項,宏等,但是我不知道哪個最適合我的需求。 我以為向導會起作用,但這可能會過大。 我只想刪除同一項目中一組現有文件的重復性。

您可以使用VS2010中的文件|導出模板...將單個項目項目導出為壓縮模板。 要創建包含多個文件的模板,您可以導出第一個項目,然后將其他項目添加到生成的模板zip中。 您還需要編輯zip中的.vstemplate文件,以包括其他項。

例如,我從現有項目中導出了一個表單,然后添加了一個xml文件。 生成的zip文件包含以下文件

__TemplateIcon.ico
Form1.cs的
Form1.Designer.cs
Form1.resx
MyTemplate.vstemplate
xmldata.xml

.vstemplate文件包含以下xml:

<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
    <DefaultName>TwoFileTemplate</DefaultName>
    <Name>TwoFileTemplate</Name>
    <Description>Test template</Description>
    <ProjectType>CSharp</ProjectType>
    <SortOrder>10</SortOrder>
    <Icon>__TemplateIcon.ico</Icon>
  </TemplateData>
  <TemplateContent>
    <References />
    <ProjectItem SubType="" TargetFileName="xml\$fileinputname$.xml" ReplaceParameters="true">xmldata.xml</ProjectItem>
    <ProjectItem SubType="Form" TargetFileName="$fileinputname$.cs" ReplaceParameters="true">Form1.cs</ProjectItem>
    <ProjectItem SubType="" TargetFileName="$fileinputname$.Designer.cs" ReplaceParameters="true">Form1.Designer.cs</ProjectItem>
    <ProjectItem SubType="" TargetFileName="$fileinputname$.resx" ReplaceParameters="true">Form1.resx</ProjectItem>
  </TemplateContent>
</VSTemplate>

更新zip文件后,將其移動到文件夾... \\ Visual Studio 2010 \\ Templates \\ ItemTemplates。

現在,新模板應顯示在VS2010的“添加新項”對話框中。 它將使用您在將新項目添加到項目中時指定的名稱添加表單和xml文件,並將xml文件放置在名為“ xml”的目錄中。 如果您想要一個或另一個文件的固定名稱,則可以使用所需名稱替換.vstemplate文件中的$fileinputnam$

編輯-如果要為表單或其他類文件使用固定的項目名稱,則還需要打開代碼模板並將$safeitemname$替換$safeitemname$所需的名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM