5

Я создал VSIX Project (с использованием расширяемости Visual Studio), который ссылается на C# Project Template; это выглядит следующим образом:Шаблон проекта Visual Studio в категории Web

<TemplateData> 
    <Name>...</Name> 
    <Description>...</Description> 
    <Icon>...</Icon> 
    <ProjectType>Web</ProjectType> 
    <ProjectSubType>CSharp</ProjectSubType> 
    <TemplateGroupID>Web</TemplateGroupID> 
    <DefaultName>WebApplication</DefaultName> 
</TemplateData> 
<TemplateContent> 
    <ProjectCollection> 
     <ProjectTemplateLink ProjectName="My Web Application"> 
      Projects\WebApplication\ProjectTemplate.vstemplate 
     </ProjectTemplateLink> 
     <ProjectTemplateLink ProjectName="My Windows Library"> 
      Projects\Library\ProjectTemplate.vstemplate 
     </ProjectTemplateLink> 
    </ProjectCollection> 
</TemplateContent> 

Все работает, как ожидалось, но мой Project Template всегда появляется в корневой категории визуальной формы Студия New Project по умолчанию Visual C#.

Я хотел бы иметь его внутри Web category.

enter image description here

Примечание:

<ProjectType>CSharp</ProjectType> 
<ProjectSubType>Web</ProjectSubType> 

=> Шаблон появляется в корневой категории по умолчанию, а

<ProjectType>Web</ProjectType> 
<ProjectSubType>CSharp</ProjectSubType> 

=> Шаблон не видно!

ответ

8

Вам необходимо установить свойство «Категория» файла .vstemplate в Проводнике решений Visual Studio.

enter image description here

+0

Wouah, я искал долго, не находя ничего! Я не думал, что это так просто ... Большое спасибо. – Bidou

+0

Хорошо, но как вы можете сделать это вручную в файле .vstemplate? –

+1

@Saysmaster, это свойство не сохраняется в файле .vstemplate. Он сохраняется в файле проекта, который содержит файл .vstemplate. Найдите узел ''. Также стоит отметить, что если вам нужно место в названии категории, вам нужно ввести '% 20' вместо пробела. Например, 'Foo% 20Bar' будет отображаться как« Foo Bar »в Visual Studio. – reduckted

3

Если вручную создать шаблон проекта (создание * .zip файл, который включает в себя шаблон проекта), а не через раствор расширяемости в визуальной студии, подкатегорию зависит от того, где в файловой системе, вы размещаете пакет шаблона проекта. (Категория все еще зависит от элемента ProjectType в .vstemplate).

Например, если создать файл почтового индекса, где ценность .vstemplate ProjectType является «CSharp», и вы поместите файл зип под (для VS 2010):

"%USERPROFILE%\Documents\Visual Studio 2010\Templates\ProjectTemplates\Visual C#\MySubcategory1\MySubcategory2 

Затем проект окажется под Visual C# (в связи с ProjectType), а затем в иерархии «MySubcategory1 \ MySubcategory2» (в связи с размещением в файловой системе)

Project Type Subcategories

Ума, что шаблон проекта будет отображаться в же иерархия (Visual C# - MySubcategory1 - MySubcategory2), даже если почтовый файл не был помещен под визуальной # subfolfer C в папке шаблонов, как показано ниже:

"%USERPROFILE%\Documents\Visual Studio 2010\Templates\ProjectTemplates\MySubcategory1\MySubcategory2