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>