Schemareferenz für Visual Studio-Vorlagenmanifest
Dieses Schema beschreibt das Format der Visual Studio-Vorlagenmanifestdateien (VSTMAN), die für Visual Studio-Projekt- oder Elementvorlagen generiert werden. Das Schema beschreibt auch den Speicherort und andere relevante Informationen zur Vorlage.
: Da es separate Element- und Projektvorlagenverzeichnisse gibt, sollte ein Manifest nie eine Mischung aus Element- und Projektvorlagen aufweisen.
Wichtig
Dieses Manifest ist ab Visual Studio 2017 verfügbar.
VSTemplateManifest-Element
Das Stammelement des Manifests.
Attribute
Version: Eine Zeichenfolge, die die Version des Vorlagenmanifests darstellt. Erforderlich.
Gebietsschema: Eine Zeichenfolge, die das Gebietsschema oder gebietsschema des Vorlagenmanifests darstellt. Der Gebietsschemawert gilt für alle Vorlagen. Sie müssen für jedes Gebietsschema ein separates Manifest verwenden. Optional.
Untergeordnete Elemente
VSTemplateContainer Optional.
VSTemplateDir Optional.
Übergeordnetes Element
Keine.
VSTemplateContainer
Der Container der Vorlagenmanifestelemente. Ein Manifest verfügt über einen Vorlagencontainer für jede von ihr definierte Vorlage.
Attribute
VSTemplateType: Ein Zeichenfolgenwert, der den Typ der Vorlage angibt ("Project"
, "Item"
oder "ProjectGroup"
). Erforderlich
Untergeordnete Elemente
RelativePathOnDisk: Der relative Pfad der Vorlagendatei auf dem Datenträger. Dieser Speicherort definiert auch die Platzierung der Vorlage in der Vorlagenstruktur, die im Dialogfeld "Neues Projekt " oder "Neues Element " angezeigt wird. Bei Vorlagen, die als Verzeichnis und einzelne Dateien bereitgestellt werden, bezieht sich dieser Pfad auf das Verzeichnis, das die Vorlagendateien enthält. Bei Vorlagen, die als ZIP-Datei bereitgestellt werden, sollte dieser Pfad der Pfad zur ZIP-Datei sein.
**VSTemplateHeader: Ein TemplateData-Element , das den Header beschreibt.
Übergeordnetes Element
VSTemplateManifest
VSTemplateDir
Beschreibt das Verzeichnis, in dem sich die Vorlage befindet. Ein Manifest kann mehrere VSTemplateDir-Einträge enthalten, um lokalisierten Namen und Sortierreihenfolgen für Verzeichnisse bereitzustellen, um ihre Darstellung in der Vorlagenkategoriestruktur zu steuern.
Aufgrund ihres Designs sollten VSTemplateDir-Einträge nur in nicht gebietsschemaspezifischen Manifesten angezeigt werden.
Attribute
Keine
Untergeordnete Elemente
RelativePath: Der Pfad der Vorlage. Pro Pfad kann nur ein Eintrag vorhanden sein, sodass der erste für alle Manifeste gewinnen wird.
LocalizedName: Ein NameDescriptionIcon-Element, das den lokalisierten Namen angibt. Optional.
SortOrder: Eine Zeichenfolge, die die Sortierreihenfolge angibt. Optional.
ParentFolderOverrideName: Der überschriebene Name des übergeordneten Ordners. Optional. Dieses Element verfügt über ein Name-Attribut , bei dem es sich um einen Zeichenfolgenwert handelt, der den Namen angibt.
Übergeordnetes Element
VSTemplateManifest
NameDescriptionIcon
Gibt den Namen und die Beschreibung an, möglicherweise für lokalisierte Vorlagen. Siehe "LocalizedName " weiter oben.
Attribute
Paket: Ein Zeichenfolgenwert, der das Paket angibt. Optional.
ID: Ein Zeichenfolgenwert, der die ID angibt. Optional.
Untergeordnete Elemente
Keine.
Übergeordnetes Element
Lokalisierter Name
Beispiele
Der folgende Code ist ein Beispiel für eine VSTMAN-Datei der Projektvorlage.
<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>
Der folgende Code ist ein Beispiel für eine Elementvorlagen-VSTMAN-Datei.
<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>