Привет! Я пытаюсь затолкать свой шаблон проекта в (Visual C#/Web)(Аналогично тому как там лежит DevExpress Template Gallery на моём скриншоте). Пытаюсь сделать это следующими строками кода в файле MyTemplate.vstemplate:
Ответ
Ручной способ
Создаете проект. Заполняете нужными начальными файлами для шаблона. Сохраняете.
В меню Файл выбираете Экспорт шаблона.
В Wizard'е выбираете: Project Template.
Заполняете поля.
Архив закинется в папку <Рабочая папка студии>\My Exported Templates и в папку <Рабочая папка студии>\Templates\ProjectTemplates (если не сняли галку в wizard'е):
Этот архив нужно поместить в папку <Рабочая папка студии>\Templates\ProjectTemplates\Visual C#\Web (ее нет, поэтому необходимо создать):
Заходите в студию. И Profit.
С помощью VSIX
Дожен быть готов архив. Смотри 1-5 пункты ручного способа
Создаете проект VSIX.
В проекте создаете нужную иерархию папок. В данном случае получается следующая иерархия:
Закидывайте архив в папку ProjectTemplates\CSharp\Web
В манифесте указываете нужные данные. Затем заходите в пункт Assets и добавляете:
Сохраняетесь. Билдитесь. Запускаете VSIX. Открываете студию.
ProjectTemplate + VSIX
Создаете проект типа ProjectTemplate заполняете его.
Выбираете в студии файл с расширением *.vstemplate (по умолчанию его имя совпадает с именем проекта). И в его свойствах в строке Category прописываете путь иерархии, который будет начинаться от CSharp. Т.е. если указываете SubA/SubB/SubC, то шаблон будет лежать в CSharp/SubA/SubB/SubC. В нашем случае указываем только Web:
Создаем проект VSIX.
В манифесте указываете нужные данные:
Билдитесь.
P.S. Немного про элемент TemplateData.
Вы указали ProjectSubType значение Web, но этот элемент может иметь только всего 4 значения:
SmartDevice-NETCFv1 - указывает поддержку .NET Compact Framework версии 1.0
SmartDevice-NETCFv1 - указывает поддержку .NET Compact Framework версии 2.0
CSharp - Задается только тогда, когда элемент ProjectType имеет значение Web (т.е. это проект типа веб-сайт). Указывает на языка программирования.
VisualBasic - тоже самое, что и предыдущий пункт, только язык программирования VisualBasic
Комментариев нет:
Отправить комментарий