私が使う
`.....
.....
query = query.Where(criterion, fiedNames);
string sql2 = ((ObjectQuery)query).ToTraceString();'
LINQ によって実行される予定の SQL コードを取得して微調整します。
クイック ウォッチを実行すると、次の SQL ステートメントが表示されますが、理解できません。
SELECT [UnionAll2].[C3] AS [C1], [UnionAll2].[C4] AS [C2],
[UnionAll2].[C5] AS [C3], [UnionAll2].[C6] AS [C4],
[UnionAll2].[C7] AS [C5],
[UnionAll2].[C8] AS [C6],
[UnionAll2].[C9] AS [C7],
..... few hundereds line more.....
@p__linq__4 AS [C2],
.....
CASE
WHEN ( [Join5].[id] IS NULL ) THEN
Cast(NULL AS INT)
WHEN ( @p__linq__0 = 1 )
.......
明らかに、SQL管理スタジオに貼り付けて実行すると、値を渡さないとエラーが発生し@p__linq__0
ます....
私の質問: SQL 管理で実行できるトレース SQL を取得するにはどうすればよいですか?