2009-04-01 19 views
0

LinQからSQLへのクエリをコンパイルする方法の基本的で明確な例を見てみたいと思います。私はそれについて調べたところ、いくつかの実装例があるにもかかわらず、通常、ブログのポスターは、コンパイルされたクエリとコンパイルされていないクエリの時間応答の違いに重点を置いています。コンパイル済みのLinQクエリ

答えて

1

LINQ基本的にクエリがいずれかを実行せずに再利用できるように、プレーンなSQLにLinqToSQLクエリの翻訳は、コンパイル時に一度だけ起こることを許可するには翻訳。

それらは、クエリで使用されるDataContextのインスタンスとパラメータを受信し、静的Funcデリゲートとして表される:

public static Func<MyDataContext, string, IQueryable<Entity>> 
    TestQuery = 
     CompiledQuery.Compile((MyDataContext ctx, string param) => 
      from e in ctx.Entities where e.Field == param select e); 

常套コンパイルクエリは、部分クラスの静的メンバとして格納することができることですDataContext生成クラスを拡張します。

関連する問題