Bagikan melalui


Referensi skema manifes templat Visual Studio

Skema ini menjelaskan format file manifes templat Visual Studio (.vstman) yang dihasilkan untuk proyek Visual Studio atau templat item. Skema ini juga menjelaskan lokasi dan informasi relevan lainnya tentang templat.

: Karena ada item terpisah dan direktori templat proyek, manifes seharusnya tidak pernah memiliki campuran item dan templat proyek.

Penting

Manifes ini tersedia mulai dari Visual Studio 2017.

Elemen VSTemplateManifest

Elemen akar manifes.

Atribut

  • Versi: String yang mewakili versi manifes templat. Harus diisi.

  • Lokal: String yang mewakili lokal atau lokal manifes templat. Nilai lokal berlaku untuk semua templat. Anda harus menggunakan manifes terpisah untuk setiap lokal. Opsional.

Elemen anak

  • VsTemplateContainer Opsional.

  • VSTemplateDir Opsional.

elemen induk

Tidak ada.

VSTemplateContainer

Kontainer elemen manifes templat. Manifes memiliki satu kontainer templat untuk setiap templat yang ditentukannya.

Atribut

VSTemplateType: Nilai string yang menentukan jenis templat ("Project", "Item", atau "ProjectGroup"). Wajib

Elemen anak

  • RelativePathOnDisk: Jalur relatif file templat pada disk. Lokasi ini juga menentukan penempatan templat di pohon templat yang diperlihatkan dalam dialog Proyek Baru atau Item Baru. Untuk templat yang disebarkan sebagai direktori dan file individual, jalur ini mengacu pada direktori yang berisi file templat. Untuk templat yang disebarkan sebagai file .zip , jalur ini harus menjadi jalur ke file .zip .

  • **VSTemplateHeader: Elemen TemplateData yang menjelaskan header.

elemen induk

VSTemplateManifest

VSTemplateDir

Menjelaskan direktori tempat templat berada. Manifes dapat berisi beberapa entri VSTemplateDir untuk memberikan nama yang dilokalkan dan urutan pengurutan direktori untuk mengontrol tampilannya di pohon kategori templat.

Karena desainnya, entri VSTemplateDir hanya akan muncul dalam manifes yang ditentukan non-lokal.

Atribut

Tidak ada.

Elemen anak

  • RelativePath: Jalur templat. Hanya ada satu entri per jalur, jadi yang pertama akan menang untuk semua manifes.

  • LocalizedName: Elemen NameDescriptionIcon yang menentukan nama yang dilokalkan. Opsional.

  • SortOrder: String yang menentukan urutan pengurutan. Opsional.

  • ParentFolderOverrideName: Nama yang ditimpa dari folder induk. Opsional. Elemen ini memiliki atribut Name , yang merupakan nilai string yang menentukan nama.

elemen induk

VSTemplateManifest

NameDescriptionIcon

Menentukan nama dan deskripsi, mungkin untuk templat yang dilokalkan. Lihat LocalizedName di atas.

Atribut

  • Paket: Nilai string yang menentukan paket. Opsional.

  • ID: Nilai string yang menentukan ID. Opsional.

Elemen anak

Tidak ada.

elemen induk

LocalizedName

Contoh

Kode berikut adalah contoh file .vstman templat proyek.

<VSTemplateManifest Version="1.0" Locale="1033" xmlns="http://schemas.microsoft.com/developer/vstemplatemanifest/2015">
  <VSTemplateContainer TemplateType="Project">
    <RelativePathOnDisk>CSharp\1033\TestProjectTemplate</RelativePathOnDisk>
    <TemplateFileName>TestProjectTemplate.vstemplate</TemplateFileName>
    <VSTemplateHeader>
      <TemplateData xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
        <Name>TestProjectTemplate</Name>
        <Description>TestProjectTemplate</Description>
        <Icon>TestProjectTemplate.ico</Icon>
        <ProjectType>CSharp</ProjectType>
        <RequiredFrameworkVersion>2.0</RequiredFrameworkVersion>
        <SortOrder>1000</SortOrder>
        <TemplateID>aac0aeea-7883-4003-992f-937d53d70ab1</TemplateID>
        <CreateNewFolder>true</CreateNewFolder>
        <DefaultName>TestProjectTemplate</DefaultName>
        <ProvideDefaultName>true</ProvideDefaultName>
      </TemplateData>
    </VSTemplateHeader>
  </VSTemplateContainer>
</VSTemplateManifest>

Kode berikut adalah contoh file .vstman templat item.

<VSTemplateManifest Version="1.0" Locale="1033" xmlns="http://schemas.microsoft.com/developer/vstemplatemanifest/2015">
  <VSTemplateContainer TemplateType="Item">
    <RelativePathOnDisk>CSharp\1033\ItemTemplate1</RelativePathOnDisk>
    <TemplateFileName>ItemTemplate1.vstemplate</TemplateFileName>
    <VSTemplateHeader>
      <TemplateData xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
        <Name>ItemTemplate1</Name>
        <Description>ItemTemplate1</Description>
        <Icon>ItemTemplate1.ico</Icon>
        <TemplateID>bfeadf8e-a251-4109-b605-516b88e38c8d</TemplateID>
        <ProjectType>CSharp</ProjectType>
        <RequiredFrameworkVersion>2.0</RequiredFrameworkVersion>
        <NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
        <DefaultName>Class.cs</DefaultName>
      </TemplateData>
    </VSTemplateHeader>
  </VSTemplateContainer>
</VSTemplateManifest>