Visual Studio 템플릿 매니페스트 스키마 참조
이 스키마는 Visual Studio 프로젝트 또는 항목 템플릿에 대해 생성된 Visual Studio 템플릿 매니페스트(.vstman) 파일의 형식을 설명합니다. 스키마는 템플릿에 대한 위치 및 기타 관련 정보도 설명합니다.
: 별도의 항목 및 프로젝트 템플릿 디렉터리가 있으므로 매니페스트에는 항목과 프로젝트 템플릿이 혼합되어 있어서는 안 됩니다.
Important
이 매니페스트는 Visual Studio 2017부터 사용할 수 있습니다.
VSTemplateManifest 요소
매니페스트의 루트 요소입니다.
특성
버전: 템플릿 매니페스트의 버전을 나타내는 문자열입니다. 필수입니다.
로캘: 템플릿 매니페스트의 로캘을 나타내는 문자열입니다. 로캘 값은 모든 템플릿에 적용됩니다. 각 로캘에 대해 별도의 매니페스트를 사용해야 합니다. 선택 사항.
자식 요소
VSTemplateContainer 선택 사항입니다.
VSTemplateDir 선택 사항입니다.
상위 요소
없음.
VSTemplateContainer
템플릿 매니페스트 요소의 컨테이너입니다. 매니페스트에는 정의하는 각 템플릿에 대해 하나의 템플릿 컨테이너가 있습니다.
특성
VSTemplateType: 템플릿의 형식("Project"
, "Item"
또는 "ProjectGroup"
)을 지정하는 문자열 값입니다. Required
자식 요소
RelativePathOnDisk: 디스크에 있는 템플릿 파일의 상대 경로입니다. 또한 이 위치는 새 프로젝트 또는 새 항목 대화 상자에 표시된 템플릿 트리에서 템플릿의 배치를 정의합니다. 디렉터리 및 개별 파일로 배포된 템플릿의 경우 이 경로는 템플릿 파일이 포함된 디렉터리를 참조합니다. .zip 파일로 배포된 템플릿의 경우 이 경로는 .zip 파일의 경로여야 합니다.
**VSTemplateHeader: 헤더를 설명하는 TemplateData 요소입니다.
상위 요소
VSTemplateManifest
VSTemplateDir
템플릿이 있는 디렉터리에 대해 설명합니다. 매니페스트에는 여러 VSTemplateDir 항목이 포함되어 지역화된 이름을 제공하고 디렉터리에서 템플릿 범주 트리의 모양을 제어하기 위한 정렬 순서를 제공할 수 있습니다.
디자인으로 인해 VSTemplateDir 항목은 로캘이 아닌 지정된 매니페스트에만 표시되어야 합니다.
특성
없음
자식 요소
RelativePath: 템플릿의 경로입니다. 경로당 하나의 항목만 있을 수 있으므로 첫 번째 항목은 모든 매니페스트에 대해 승리합니다.
LocalizedName: 지역화된 이름을 지정하는 NameDescriptionIcon 요소입니다. 선택 사항.
SortOrder: 정렬 순서를 지정하는 문자열입니다. 선택 사항.
ParentFolderOverrideName: 부모 폴더의 재정의된 이름입니다. 선택 사항. 이 요소에는 이름을 지정하는 문자열 값인 Name 특성이 있습니다.
상위 요소
VSTemplateManifest
NameDescriptionIcon
지역화된 템플릿의 이름과 설명을 지정합니다. 위의 LocalizedName을 참조하세요.
특성
패키지: 정책을 지정하는 문자열 값입니다. 선택 사항.
ID: ID를 지정하는 문자열 값입니다. 선택 사항.
자식 요소
없음
상위 요소
LocalizedName
예제
다음 코드는 프로젝트 템플릿 .vstman 파일의 예제입니다.
<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>
다음 코드는 항목 템플릿 .vstman 파일의 예제입니다.
<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>