Freigeben über


T4-Assemblydirektive

In einer Visual Studio-Entwurfszeittextvorlage wird mit der assembly-Direktive eine Assembly geladen, damit im Vorlagencode die Typen der Vorlage verwendet werden können. Der Effekt ist mit dem Hinzufügen eines Assemblyverweises in einem Visual Studio-Projekt vergleichbar.

Eine allgemeine Übersicht über das Schreiben von Textvorlagen finden Sie unter Schreiben einer T4-Textvorlage.

Tipp

Die assembly-Direktive ist in einer Laufzeitvorlage (vorverarbeiteten Vorlage) nicht erforderlich. Fügen Sie den Verweisen des Visual Studio-Projekts stattdessen die notwendigen Assemblys hinzu.

Verwenden der Assemblydirektive

Die Syntax der Direktive lautet wie folgt:

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

Folgende Optionen stehen zum Angeben des Assemblynamens zur Verfügung:

  • Der starke Name einer Assembly im GAC, z. B. System.Xml.dll. Sie können auch das lange Formular verwenden, z. B. name="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089". Weitere Informationen finden Sie unter AssemblyName.

  • Absoluter Pfad der Assembly

Sie können mit der $(variableName)-Syntax auf Visual Studio oder MSBuild-Variablen wie $(SolutionDir) und %VariableName% verweisen, um auf Umgebungsvariablen zu verweisen. Beispiel:

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

Die assembly-Direktive hat in einer vorverarbeiteten Textvorlage keinerlei Auswirkungen. Schließen Sie stattdessen die notwendigen Verweise in den Abschnitt Verweise des Visual Studio-Projekts ein. Weitere Informationen finden Sie unter Generieren von Text zur Laufzeit mithilfe von vorverarbeiteten T4-Textvorlagen.

Standardassemblys

Die folgenden Assemblys werden automatisch geladen, damit Sie keine Assemblydirektiven dafür schreiben müssen:

  • Microsoft.VisualStudio.TextTemplating.1*.dll

  • System.dll

  • WindowsBase.dll

Wenn Sie eine benutzerdefinierte Direktive verwenden, lädt der Direktivenprozessor möglicherweise zusätzliche Assemblys. Wenn Sie z. B. Vorlagen für eine domänenspezifische Sprache (DSL) schreiben, müssen Sie keine Assemblydirektiven für die folgenden Assemblys schreiben:

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

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

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

  • Die Assembly mit der DSL.

Siehe auch

Weitere Ressourcen

T4-Include-Direktive

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

März 2011

Vom übergeordnetem Thema aufgeteilt.

Informationsergänzung.