Dokumentacja schematu manifestu szablonu programu Visual Studio

W tym schemacie opisano format plików manifestu szablonu programu Visual Studio (vstman), które są generowane dla szablonów projektów lub elementów programu Visual Studio. Schemat opisuje również lokalizację i inne istotne informacje o szablonie.

: Ponieważ istnieją oddzielne katalogi elementów i szablonów projektu, manifest nigdy nie powinien mieć kombinacji szablonów elementów i projektów.

Ważne

Ten manifest jest dostępny od programu Visual Studio 2017.

VSTemplateManifest, element

Element główny manifestu.

Atrybuty

  • Wersja: ciąg reprezentujący wersję manifestu szablonu. Wymagany.

  • Ustawienia regionalne: ciąg reprezentujący ustawienia regionalne lub ustawienia regionalne manifestu szablonu. Wartość ustawień regionalnych ma zastosowanie do wszystkich szablonów. Należy użyć oddzielnego manifestu dla każdego ustawienia regionalnego. Opcjonalny.

Elementy podrzędne

  • VsTemplateContainer Opcjonalnie.

  • VsTemplateDir opcjonalne.

Element nadrzędny

Brak.

VSTemplateContainer

Kontener elementów manifestu szablonu. Manifest ma jeden kontener szablonu dla każdego zdefiniowanego szablonu.

Atrybuty

VSTemplateType: wartość ciągu określająca typ szablonu ("Project", "Item", lub "ProjectGroup"). Wymagania

Elementy podrzędne

  • RelativePathOnDisk: ścieżka względna pliku szablonu na dysku. Ta lokalizacja definiuje również umieszczanie szablonu w drzewie szablonu wyświetlanym w oknie dialogowym Nowy projekt lub Nowy element . W przypadku szablonów wdrożonych jako katalog i pojedyncze pliki ta ścieżka odnosi się do katalogu zawierającego pliki szablonu. W przypadku szablonów wdrożonych jako plik zip ta ścieżka powinna być ścieżką do pliku zip .

  • **VSTemplateHeader: element TemplateData opisujący nagłówek.

Element nadrzędny

VSTemplateManifest

VSTemplateDir

Opisuje katalog, w którym znajduje się szablon. Manifest może zawierać wiele wpisów VSTemplateDir w celu zapewnienia zlokalizowanej nazwy i kolejności sortowania katalogów w celu kontrolowania ich wyglądu w drzewie kategorii szablonów.

Ze względu na ich projekt wpisy VSTemplateDir powinny być wyświetlane tylko w manifestach innych niż określone ustawienia regionalne.

Atrybuty

Brak.

Elementy podrzędne

  • RelativePath: ścieżka szablonu. Może istnieć tylko jeden wpis na ścieżkę, więc pierwszy z nich wygra wszystkie manifesty.

  • LocalizedName: element NameDescriptionIcon , który określa zlokalizowaną nazwę. Opcjonalny.

  • SortOrder: ciąg określający kolejność sortowania. Opcjonalny.

  • ParentFolderOverrideName: zastąpiona nazwa folderu nadrzędnego. Opcjonalny. Ten element ma atrybut Name , który jest wartością ciągu, która określa nazwę.

Element nadrzędny

VSTemplateManifest

NameDescriptionIcon

Określa nazwę i opis, prawdopodobnie dla zlokalizowanych szablonów. Zobacz LocalizedName powyżej.

Atrybuty

  • Pakiet: wartość ciągu określająca pakiet. Opcjonalny.

  • ID: wartość ciągu określająca identyfikator. Opcjonalny.

Elementy podrzędne

Brak.

Element nadrzędny

Localizedname

Przykłady

Poniższy kod jest przykładem pliku vstman szablonu projektu.

<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>

Poniższy kod jest przykładem pliku vstman szablonu elementu.

<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>