Перейти до вмісту

Text Template Transformation Toolkit

Матеріал з Вікіпедії — вільної енциклопедії.
Версія від 18:00, 25 листопада 2019, створена 108.177.7.87 (обговорення) (Виправлена описка)

text

T4 частини

Директиви обробки(Processing directives)

Директиви компіляції та опції обробки для блоків коду, мова програмування для даних директив це C#. Існують наступні типи директив:

  • Директиви шаблонів(Template directive) - Дозволяє встановити правила за якими шаблон буде оброблено, можливе лише одиничне використання даної директиви. Приклад:
 <#@ template [language="VB/C#"] [compilerOptions="опції компілятору"] [culture="код культури"] 
[debug="true/false"] [hostspecific="true/false/trueFromBase"] [inherits="ім'я класу від якого відбувається наслідування"] 
[visibility="public/internal"] [linePragmas="true/false"] #>
  • Вихідні директиви(Output directive) - Дозволяє встановити тип вихідного файлу, а також кодування цього файлу. Приклад:
 <#@ output extension=".extension" [encoding="encoding"] #>

Підтримуються наступні кодування: US-ASCII, UTF-16BE, UTF-16, UTF-8M, UTF-7, UTF-32, 0(Кодування за замовчуванням)

  • Директиви зборки(Assembly directive) - Дозволяє додавати посилання на бібліотеки. Приклад:
 <#@ assembly name="жорстке ім'я|ім'я файлу" #>
  • Директиви імпорту(Import directive) - Дозволяє використовувати доданий простір імен у програмі. Приклад:
 <#@ import namespace="простір імен" #>
  • Директиви включення(Include directive) - Дозволяє вставляти текст з файлу у шаблон. Файл котрий імпортовано також може містити директиви для імпорту інших файлів. Приклад:
 <#@ include file="Ім'я файлу" #>
  • Директиви параметрів(Parameter directive) - Дозволяє задати змінну котра буде ініціалізована ззовні. Приклад:
 <#@ parameter type="Повний тип змінної" name="Ім'я змінної" #>

Текстові блоки(Text blocks)

Блоки виводяться у вихідний файл без змін.

Блоки керування(Control blocks)

Програмний код для обробки даних може бутий написаний на мовах C# або Visual Basic і розміщюється у середині скобок(дужок). Код може використовувати будь-які конструкції мов, а також будь-які .NET API. Блоки бувають трьох типів:

  • <# Standard control block #> - блок містить будь-який програмний код котрий робить обчислення і вивід, через функції виводу.
  • <#= Expression control block #> - блок містить змінні та методи, які щось повертають, значення котрих буде виведене у вихідний файл.
  • <#+ Class feature control block #> - блок містить методи, поля, властивості, перерахування(enum) котрі маєть бути реалізовані і можуть бути використані у інших блоках.


Посилання