Поделиться через


Директива Assembly T4

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

Общие сведения о создании текстовых шаблонов см. в разделе Написание текстового шаблона T4.

ПримечаниеПримечание

В текстовом шаблоне времени выполнения (предварительно обработанном) директива assembly не требуется.Вместо этого требуется добавить нужные сборки в раздел Ссылки проекта Visual Studio.

Использование директивы Assembly

Синтаксис директивы таков:

<#@ assembly name="[assembly strong name|assembly file name]" #>

Имя сборки должно быть одним из следующих:

  • Строгое имя сборки в глобальном кэше сборок, такое как System.Xml.dll.Кроме того, можно использовать полную форму, такую как name="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".Дополнительные сведения см. в разделе AssemblyName.

  • абсолютный путь к сборке;

Можно использовать синтаксис $(variableName) для ссылки на Visual Studio или переменные MSBuild, такие как $(SolutionDir), а синтаксис %VariableName% — для ссылки на переменные среды.Примеры.

<#@ assembly name="$(SolutionDir)\MyProject\bin\Debug\SomeLibrary.Dll" #>

В предварительно преобразованном текстовом шаблоне директива assembly не производит никакого эффекта.Вместо нее включите необходимые ссылки в раздел Ссылки проекта Visual Studio.Дополнительные сведения см. в разделе Создание текста во время выполнения с помощью текстовых шаблонов T4.

Стандартные сборки

Следующие сборки загружаются автоматически, поэтому для них не нужно создавать директивы сборки:

  • Microsoft.VisualStudio.TextTemplating.1*.dll

  • System.dll

  • WindowsBase.dll

При использовании пользовательской директивы процессор директив может загружать дополнительные сборки.Например, при создании шаблонов для доменного языка (DSL) не требуется создавать директивы сборки для следующих сборок:

  • Microsoft.VisualStudio.Modeling.Sdk.1*.dll

  • Microsoft.VisualStudio.Modeling.Sdk.Diagrams.1*.dsl

  • Microsoft.VisualStudio.TextTemplating.Modeling.1*.dll

  • Сборка, содержащая доменный язык.

См. также

Основные понятия

Директива Include T4