T4 アセンブリ ディレクティブ
更新 : 2011 年 3 月
Visual Studio のデザイン時テキスト テンプレートでは、テンプレート コードでアセンブリの型を使用できるように、assembly ディレクティブによってアセンブリが読み込まれます。 結果は、Visual Studio プロジェクトでアセンブリ参照を追加した場合と同様です。
テキスト テンプレートの作成方法の概要については、「T4 テキスト テンプレートの作成」を参照してください。
注意
実行時 (前処理された) テキスト テンプレートでは、assembly ディレクティブは不要です。 代わりに、必要なアセンブリを Visual Studio プロジェクトの [参照] に追加します。
assembly ディレクティブの使用
ディレクティブの構文は次のとおりです。
<#@ assembly name="[assembly strong name|assembly file name]" #>
アセンブリ名は、次のいずれかであることが必要です。
GAC のアセンブリの厳密な名前 (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
DSL を含むアセンブリ
参照
その他の技術情報
履歴の変更
日付 |
履歴 |
理由 |
---|---|---|
2011 年 3 月 |
親トピックから分離されました。 |
情報の拡充 |