在使用ADO.NET Entity Framework時,有時候會需要取得執行時,轉換的SQL語法
可利用System.Data.Objects.ObjectQuery 類別下的 ToTraceString() 方法
範例
02 | using (TestEntities te = new TestEntities()) |
04 | ////需引用System.Data.Objects |
05 | ObjectQuery oq = te.user.Where(a => a.user_id == 2) as ObjectQuery; |
07 | ////利用 ToTraceString() 方法,取得SQL語法 |
08 | string sql = oq.ToTraceString(); |
輸出的結果如下:
SELECT [Extent1].[User_id] AS [User_id], [Extent1].[User_name] AS [User_name],
[Extent1].[User_email] AS [User_email] FROM [dbo].[User] AS [Extent1]
WHERE 1 = [Extent1].[User_id]