Создание пользовательских шаблонов проектов и элементов

Пакет SDK для Visual Studio включает шаблоны проектов, которые создают пользовательский шаблон проекта и пользовательский шаблон элемента. Эти шаблоны включают некоторые общие подстановки параметров и создаются в виде ZIP-файлов. Они не развертываются автоматически, и они недоступны в экспериментальном экземпляре. Необходимо скопировать созданный ZIP-файл в каталог пользовательских шаблонов.

Шаблоны для создания шаблонов позволяют включать шаблоны в более крупные расширения. Это позволяет реализовать управление версиями в исходных файлах и создать группу проектов шаблонов в одном пакете VSIX.

Кроме того, можно настроить шаблон для установки пакетов NuGet. Дополнительные сведения см. в статье Пакеты NuGet в шаблонах Visual Studio.

Для основных сценариев создания шаблонов следует использовать мастер экспорта шаблонов, который сохраняет выходные данные в сжатом файле. Дополнительные сведения о создании базовых шаблонов см. в статье Создание шаблонов проектов и элементов.

Примечание.

Начиная с Visual Studio 2017 проверка пользовательских шаблонов проектов и элементов больше не выполняется. Вместо этого расширение должно предоставлять файлы манифеста шаблона, в которых указано расположение установки этих шаблонов. Visual Studio можно использовать для обновления расширений VSIX. При развертывании расширения с помощью MSI необходимо создать файлы манифеста шаблона вручную. Дополнительные сведения см. в статье Обновление пользовательских шаблонов проектов и элементов для Visual Studio 2017. Схема манифеста шаблона описана в Справочнике по схемам манифестов шаблонов Visual Studio.

Создание шаблона проектов

  1. Создайте проект Project Template. Шаблон проекта можно найти в диалоговом окне Новый проект, выполнив поиск по словосочетанию "project template" и выбрав версию шаблона проекта для C# или Visual Basic.

    Шаблон создает файл класса, значок, .vstemplate файл проекта, редактируемый файл проекта с именем ProjectTemplate.vbproj или ProjectTemplate.csproj, а также некоторые файлы, которые обычно создаются другими типами проектов, такими как resources.resx-файл, файл AssemblyInfo и .settings файл. Каждый файл кода содержит общие подстановки параметров, если это необходимо.

    Screenshot of project template project selection.

  2. Добавьте и удалите элементы в проекте в соответствии с требованиями проекта. Не удаляйте редактируемый файл проекта, файл AssemblyInfo или .vstemplate файл.

  3. .vstemplate Обновите файл, чтобы отразить любые дополнения и удаления. Элемент Project должен содержать элемент ProjectItem для каждого файла, который будет включен в шаблон.

  4. Измените файлы кода и другое содержимое, доступное для пользователя, и добавьте соответствующие подстановки параметров.

  5. Измените созданное содержимое в соответствии со своими потребностями.

  6. Выполните сборку проекта.

    Visual Studio создает .zip файл, содержащий шаблон. Он не развернут, и он недоступен в экспериментальном экземпляре.

Создание шаблона элемента

  1. Создайте проект Item Template.

    Шаблон создает файл класса, значок, .vstemplate файл и файл AssemblyInfo . Файл класса содержит некоторые общие подстановки параметров.

  2. Добавьте и удалите элементы в проекте в соответствии с требованиями проекта.

  3. .vstemplate Обновите файл, чтобы отразить любые дополнения и удаления. Элемент Project должен содержать элемент ProjectItem для каждого файла, который будет включен в шаблон.

  4. Измените файлы кода и другое содержимое, доступное для пользователя, и добавьте соответствующие подстановки параметров.

  5. Измените созданное содержимое в соответствии со своими потребностями.

  6. Выполните сборку проекта.

    Visual Studio создает сжатый файл, содержащий шаблон. Он не развернут, и он недоступен в экспериментальном экземпляре.

Развертывание

Развертывание шаблона проекта или элемента

  1. Создайте проект VSIX. Дополнительные сведения см. в разделе Шаблон проекта VSIX.

  2. Задайте проект VSIX в качестве запускаемого проекта. В Обозревателе решений выберите узел проекта VSIX, щелкните его правой кнопкой мыши и выберите пункт Назначить запускаемым проектом.

  3. Задайте проект для шаблона проекта (Project Template) в качестве ресурса для проекта VSIX. Откройте файл .vsixmanifest. Перейдите на вкладку Ресурсы и выберите Создать.

    1. В поле Тип задайте значение Microsoft.VisualStudio.ProjectTemplate или Microsoft.VisualStudio.ItemTemplate.

    2. В поле "Источник" выберите Проект в текущем решении, а затем проект, содержащий шаблон.

  4. Нажмите клавишу F5, чтобы собрать решение. Откроется экспериментальный экземпляр.

  5. В проекте для шаблона проекта (Project Template) вы увидите свой шаблон проекта, указанный в диалоговом окне Новый проект (Файл>Создать>Проект) в узле Visual C# или Visual Basic. В проекте для шаблона элемента (Item Template) вы должны увидеть свой шаблон элемента в диалоговом окне Добавление нового элемента. Чтобы открыть диалоговое окно Добавление нового элемента, в Обозревателе решений выберите узел проекта и последовательно выберите пункты Добавить>Новый элемент.

См. также