Определение нестандартных параметров

Оценить
(0 голоса)

Кроме вышеупомянутых параметров Visual Studio вы можете определить собственные не­стандартные параметры для передачи в ваши шаблоны. Этот процесс аналогичен использо­ванию зарезервированных параметров шаблона. Сначала определите параметры в вашем коде при помощи синтаксиса $parameter$, как показано здесь:

string myCustomValue = "$CustomParameterl$";

Затем отредактируйте XML-файл с расширением vstemplate для того, чтобы включить в него узел <CustomParameters>, в котором вы и определяете ваши замены. Мы подробнее рас­смотрим этот XML в следующем разделе; однако нестандартный параметр определяется в файле с расширением vstemplate следующим образом:

<TemplateContent>

<CustomParameters>

<CustomParameter Name="$CustomParameterl$" Value="Some Custom Value"/> </CustomParameters>

</TemplateContent>

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

myCustomValue будет установлено В Some Custom Value.

Примечание

Мастер Export Template Wizard не распознает нестандартных параметров. Вам при­дется вручную редактировать XML-файл с расширением vstemplate для того, чтобы включить в него узел CustomParameters.

Шаг 3. Экспортируем ваш шаблон

Теперь, когда вы определили ваш шаблон и приняли решение относительно параметров шаблона, следующий шаг— запустить мастер Export Template Wizard. Этот мастер исполь­зуется как для шаблонов проектов, так и для шаблонов элементов. Вы можете получить к нему доступ из меню File.

На рис. 7.26 показан первый шаг мастера. Здесь вас просят выбрать тип шаблона (проекта или элемента). Затем вы должны выбрать проект из текущего (открытого) решения Visual Studio. Этот проект будет служить в качестве основы для вашего шаблона.

Следующий шаг мастера Export Template Wizard позволяет вам определить несколько до­полнительных параметров для вашего шаблона. Вы можете указать значок для шаблона, название и описание (которые будут видны в диалоговом окне New Project), а также вы­брать местоположение, куда будет помещен ваш шаблон. На рис. 7.27 показан призер этогб диалогового окна.

Определение нестандартных параметров

Обратите внимание, что в показанном на рис. 7.27 диалоговом окне флажок Automatically import the template into Visual Studio не отмечен. Так сделано по двум причинам. Во- первых, вы будете редактировать генерируемый мастером vstemplate-файл, и во-вторых, вы будете упаковывать шаблон для инсталляции (мы рассмотрим эту тему в следующем разде­ле). По умолчанию шаблон создается в каталоге ..ADocumentsWisual Studio 2008\Му Ex­ported TemplatesV Файл создается в формате ZIP (как и все шаблоны Visual Studio).

Шаг 4 (необязательный). Редактирование XML-файла с расширением vstemplate

Четвертый (необязательный) шаг этого процесса — редактирование XML-файла с расшире­нием vstemplate. Мастер Export Template Wizard генерирует для вас vstemplate-файл по умолчанию. Вы можете открыть zip-файл, отредактировать XML, опять сжать файл в zip- архив и поместить его в каталог шаблона или в пакет для инсталляции. В листинге 7.1 пока­зан образец vstemplate-файла.

<VSTemplate Version="2.0.0" xmlns="http://schema^, microsoft.com/developer/vstemplate/2005"

Type=MPr°jectM>

<TemplateData>

<Name>Smart Client</Name>

<Description>Corporate standard smart client template</Description>

<ProjectType>CSharp</ProjectType>

<ProjectSubType>

</Proj ectSubType>

<sort0rder>1000</sort0rder>

<CreateNewFolder>true</CreateNewFolder>

<DefaultName>Smart Client</DefaultName>

<ProvideDefaultName>true</ProvideDefaultName>

<LocationField>Enabled</LocationField>

<EnableLocationBrowseButton>true</EnableLocationBrowseButton>

<Icon>   TemplateIcon.ico</Icon>

</TemplateData>

<TemplateContent>

<Project ТаrgetFileName="Smart Client.csproj"

File="Smart Client.csproj" ReplaceParameters="true">

<ProjectItem ReplaceParameters="true"

TargetFileName="Framework.сs">Framework.cs</ProjectItem>

</Project>

</TemplateContent>

</VSTemplate>

Обратите внимание, что мастер добавил в узел Project Item атрибут Replace Parameters и установил его значение в true. Это значение указывает Visual Studio, что она при созда­нии проекта должна заменить все параметры в целевом файле. В нашем примере целевым файлом, содержащим параметры ($safeprojectname$), является Framework.cs.

Совет

Фактически вы можете создать шаблоны, которые содержат несколько проектов. Для этого вы по-прежнему создаете vstemplate-файл для каждого проекта в решении. За­тем вы создаете корневой vstemplate-файл, который описывает "многопроектный" шаблон. Данные этого XML-файла используются в диалоговом окне New Project. Файл содержит также указатели на vstemplate-файлы отдельных проектов.

Инсталляция шаблона
Упаковка вашего произведения
Элементы файла VSContent
Использование атрибутов для определения VSTemplates и фрагментов кода
Пример: упаковка макроса

Добавить комментарий


Защитный код
Обновить

© 2017 www.visualstudios.ru. Все права защищены.