Создание кода и текстовые шаблоны T4
В Visual Studio текстовый шаблон T4 представляет собой сочетание блоков текста и логики управления, которое может создать текстовый файл.Логика управления представляет собой фрагменты программного кода в Visual C# или Visual Basic. Созданный файл может представлять собой текст любого вида, например веб-страницу, файл ресурсов или исходный программный код на любом языке.
Существует два вида текстовых шаблонов T4:
Текстовые шаблоны T4 времени выполнения (предварительно обработанные шаблоны) выполняются в приложении для создания текстовых строк, как правило в составе выходных данных приложения.
Например, можно создать шаблон для определения страницы HTML:<html><body> The date and time now is: <#= DateTime.Now #> </body></html>
Обратите внимание, что шаблон напоминает созданные выходные данные.Сходство шаблона с результирующими выходными данными помогает избегать ошибок при его изменении.
Кроме того, шаблон содержит фрагменты программного кода.Эти фрагменты можно использовать для повторения разделов текста, создания условных разделов и отображения данных из приложения.
Для создания выходных данных приложение вызывает функцию, генерируемую этим шаблоном.Примеры.
string webResponseText = new MyTemplate().TransformText();
Приложение может выполняться на компьютере, на котором не установлена система Visual Studio.
Для создания шаблона времени выполнения добавьте в проект файл Предварительно обработанный текстовый шаблон.Кроме того, можно добавить обычный текстовый файл и задать для свойства Специальный инструмент значение TextTemplatingFilePreprocessor.
Дополнительные сведения см. в разделе Создание текста во время выполнения с помощью текстовых шаблонов T4.Дополнительные сведения о синтаксисе шаблонов см. в разделе Написание текстового шаблона T4.
Текстовые шаблоны T4 времени разработки выполняются в Visual Studio для определения части исходного кода и других ресурсов приложения.
Как правило, используется несколько шаблонов, считывающих данные из одного входного файла или базы данных, и создается несколько файлов .cs, .vb или других исходных файлов.Каждый шаблон позволяет создать один файл.Они выполняются в Visual Studio или MSBuild.Например, в качестве входных данных может использоваться XML-файл данных конфигурации.Каждый раз при редактировании XML-файла во время разработки текстовые шаблоны повторно создают соответствующую часть кода приложения.Один из шаблонов может напоминать шаблон в следующем примере:
<#@ output extension=".txt" #> <#@ assembly name="System.Xml" #> <# System.Xml.XmlDocument configurationData = ...; // Read a data file here. #> namespace Fabrikam.<#= configurationData.SelectSingleNode("jobName").Value #> { ... // More code here. }
В зависимости от значений в XML-файле созданный файл .cs напоминает следующее:
namespace Fabrikam.FirstJob { ... // More code here. }
Кроме того, в качестве входных данных можно использовать схему рабочих процессов в бизнес-действии.При изменении рабочего бизнес-процесса пользователями или начале работы с новыми пользователями, использующими другой рабочий процесс, легко пересоздать код в соответствии с особенностями новой модели.
Шаблоны времени разработки позволяют более быстро и надежно изменять конфигурацию при изменении требований.Как правило, входные данные определяются в терминах бизнес-требований (как в примере рабочего процесса).Это облегчает процесс обсуждения изменения с пользователями.Шаблоны времени разработки, таким образом, являются полезным инструментом гибкого процесса разработки.
Чтобы создать шаблон времени разработки, добавьте в проект файл Текстовый шаблон.Кроме того, можно добавить обычный текстовый файл и задать для свойства Специальный инструмент значение TextTemplatingFileGenerator.
Дополнительные сведения см. в разделе Создание кода во время разработки с помощью текстовых шаблонов T4.Дополнительные сведения о синтаксисе шаблонов см. в разделе Написание текстового шаблона T4.
![]() |
---|
Термин модель иногда используется для описания данных, считываемых одним или несколькими шаблонами.Модель может быть представлена в любом формате, любым файлом или базой данных.Он не обязательно является моделью UML или доменного языка. 'Модель указывает, что данные можно определить в терминах бизнес-концепций, а не является аналогом кода. |
Функция преобразования текстовых шаблонов называется T4.
Содержание
Создание текста во время выполнения с помощью текстовых шаблонов T4
Использование предкомпилированных текстовых шаблонов позволяет легко и надежно определять текст в любом приложении, создающем текстовые файлы.Тем не менее данный метод не применяется к текстовым шаблонам, изменяемым во время выполнения.Создание кода во время разработки с помощью текстовых шаблонов T4
Создание кода и других ресурсов на основе модели позволяет обновлять приложение посредством обновления модели.Создание кода в процессе построения
Установив пакет SDK Visual Studio для визуализации и моделирования, можно обеспечить обновление созданного программного обеспечения в соответствии с изменениями в модели.Написание текстового шаблона T4
Синтаксис файла текстового шаблона.Пошаговое руководство. Создание кода с помощью текстовых шаблонов
Пример способа применения создания кода.Отладка текстового шаблона T4
Руководство по отладке текстовых шаблонов, а также стандартные ошибки в текстовых шаблонах.Создание файлов с помощью служебной программы TextTransform
Программа командной строки, которую можно использовать для запуска преобразований текстовых шаблонов.Настройка преобразования текста T4
Руководство по написанию процессоров директив и настраиваемых хостов текстовых шаблонов.
См. также
Основные понятия
Практическое руководство. Создание файлов из модели UML