我正在研究一種正在對現有數據庫進行改進的內容管理系統,並且數據庫中有許多表格。將會有一個臨時數據庫,我們將在這裏進行更改並允許用戶「就地預覽」。然後,必須批准任何更改,併發布它們,我們將連接到相同數據庫的實時版本(相同模式)並播放捕獲的更改。有沒有什麼辦法在Linq To SQL中獲取SubmitChanges()調用中發生的底層(原始)SQL?
我發現了一些代碼(稱爲Doddle Audit),它具有一些定製功能,可以爲我提供有關正在改變的信息。我能夠獲取更新,插入和刪除之前和之後的所有列的列表。但我真正想要的是由SubmitChanges()運行的底層SQL。 LinqToSql必須生成這個,所以爲什麼我不能擁有它?
我搜索了一下,看了一下涉及SubmitChanges的代碼,把東西放在了一邊,我似乎無法找到它。有誰知道一種方法來獲得這個?
那麼,我知道我可以配置文件,從調試的角度來看,發生了什麼。但是,我需要一些能夠在代碼中捕獲正在發送和存儲的內容。所以這不是一個調試功能。 – 2010-02-24 19:03:11
我已經編輯了更多的信息 – gautema 2010-02-24 19:36:54
我的答案正確的是有可能得到一個選擇的SQL。問題在於更新/插入/刪除。我有一系列的變化,我正在審覈所有這些變化並記錄下來。本身沒有「查詢」。 – 2010-02-24 19:53:54