LINQ の式ツリー
更新 : 2007 年 11 月
LINQ では、IQueryable<T> を実装するデータ ソースを対象とした構造化クエリを表すために式ツリーが使用されます。たとえば、LINQ to SQL プロバイダは、リレーショナル データ ストアのクエリを実行するための IQueryable<T> インターフェイスを実装します。C# および Visual Basic コンパイラは、そのようなデータ ソースを対象とするクエリを、実行時に式ツリーをビルドするコードにコンパイルします。その後、クエリ プロバイダは式ツリーのデータ構造体を走査し、データ ソースに適したクエリ言語に変換します。
式ツリーは、Expression<TDelegate> 型の変数に代入されるラムダ式を表すためにも LINQ で使用されます。
動的 LINQ クエリの作成にも式ツリーを作成できます。詳細については、「方法 : 式ツリーを使用して動的クエリをビルドする」を参照してください。LINQ プロバイダをビルドしている場合にも式ツリーを使用することができます。詳細については、「チュートリアル : IQueryable LINQ プロバイダの作成」を参照してください。