IQueryable を ObjectQuery にキャストし、ToTraceString() を呼び出してエンティティ sql を取得しています。
IQueryable<SomeItem> query = context.SomeItem
.Where(x => x.Timestamp >= start
&& x.Timestamp <= end);
string eSql = (query as ObjectQuery<SomeItem>).ToTraceString();
文字列の「WHERE」セクションは次のようになります。
WHERE ([Extent1].[Timestamp] >= @p__linq__0) AND ([Extent1].[Timestamp] <= @p__linq__1)]"
これらのパラメーター プレースホルダーではなく、実際の DateTime 値が既に ESQL に取り込まれているような方法でトレース文字列を取得する方法はありますか?
Entity Sql をインターセプトし、生の EntityDataReader を使用して自分で結果を反復処理したいと考えています。
ありがとう。