ITextTemplatingEngineHost インターフェイス

テキスト テンプレートを変換するホストのインターフェイス。これは、ディレクティブ プロセッサで使用でき、テキスト テンプレートからアクセスすることもできます。

名前空間:  Microsoft.VisualStudio.TextTemplating
アセンブリ:  Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll 内)

構文

'宣言
<CLSCompliantAttribute(True)> _
Public Interface ITextTemplatingEngineHost
[CLSCompliantAttribute(true)]
public interface ITextTemplatingEngineHost
[CLSCompliantAttribute(true)]
public interface class ITextTemplatingEngineHost
[<CLSCompliantAttribute(true)>]
type ITextTemplatingEngineHost =  interface end
public interface ITextTemplatingEngineHost

ITextTemplatingEngineHost 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ StandardAssemblyReferences アセンブリ参照の一覧を取得します。
パブリック プロパティ StandardImports 名前空間の一覧を取得します。
パブリック プロパティ TemplateFile 処理されるテキスト テンプレートのパスとファイル名を取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド GetHostOption 指定されたオプションの値を取得するために、エンジンによって呼び出されます。不明な場合は null を返します。
パブリック メソッド LoadIncludeText 部分テキスト テンプレート ファイルを含める要求に対応するテキストを取得します。
パブリック メソッド LogErrors 変換エンジンからエラーおよび警告のコレクションを受け取ります。
パブリック メソッド ProvideTemplatingAppDomain 生成された変換クラスを実行するためのアプリケーション ドメインを提供します。
パブリック メソッド ResolveAssemblyReference ホストがアセンブリの場所に関する追加情報を提供できるようにします。
パブリック メソッド ResolveDirectiveProcessor 指定された表示名のディレクティブ プロセッサの型を返します。
パブリック メソッド ResolveParameterValue ディレクティブ プロセッサのパラメーターがテンプレート テキストに指定されていない場合に、パラメーターの値を解決します。
パブリック メソッド ResolvePath ファイル名または相対パスを指定すると、ホストによって完全なパスが指定されるようにします。
パブリック メソッド SetFileExtension 生成されるテキスト出力で予測されるファイル名の拡張子をホストに指示します。
パブリック メソッド SetOutputEncoding 生成されるテキスト出力で予測されるエンコーディングをホストに指示します。

このページのトップへ

解説

ホストはテキスト テンプレート ファイルを入力として受け取り、テキスト ファイルを出力として生成します。一般的なホストは、Visual Studio プロジェクト内のテンプレートを変換する TextTemplatingFileGenerator ツールです。異なる種類のテンプレートを扱うために、1 つ以上のディレクティブ プロセッサを呼出します。このインターフェイスのメンバーは、ディレクティブ プロセッサとテキスト テンプレートのコードにアクセス可能です。テキスト テンプレート エンジンはこのプロセスを制御し、ホストと 1 つ以上のディレクティブ プロセッサと対話します。これらのコンポーネントの詳細については、「コード生成と T4 テキスト テンプレート」を参照してください。

ホストがテキスト テンプレートのコードからアクセスできるようにするには、テンプレート ディレクティブの hostspecific パラメーターを設定します。次に例を示します。

<#@template language="c#" hostspecific="true" #>
<# // This template is specific to the TextTemplatingFileGenerator host,
   // which transforms templates in a Visual Studio project. #>
These are the projects in this solution:
<#=this.Host.ResolveParameterValue("-", "-", "projects") #>

Visual Studio の外部で、またはカスタム ツールでテキスト テンプレートを使用する場合は、このインターフェイスを実装して、カスタム ホストを書き込むことができます。例については、「チュートリアル: カスタム テキスト テンプレート ホストの作成」を参照してください。

参照

関連項目

Microsoft.VisualStudio.TextTemplating 名前空間

その他の技術情報

チュートリアル: カスタム テキスト テンプレート ホストの作成

コード生成と T4 テキスト テンプレート