2011-06-09 97 views
0

的ObjectContext.SaveChanges方法,我需要在我的應用程序執行的審計日誌,我想SaveChanges登錄到數據庫的任何更改記錄。有些情況下我不希望發生日誌記錄。告訴SaveChanges不執行審計日誌記錄的最優雅方式是什麼?我正在使用實體框架4.選擇性審計與實體框架

回答

0

我會創建一個自定義屬性來裝飾需要日誌的元素。它會被日誌方法讀取。這個屬性可以在類和屬性被應用,讓你可以正是應記錄選擇。

我建議你使用緩存,以避免檢查每次如果有什麼應該被記錄或沒有。

0

我已經實現了類似的日誌記錄要求。我將表格的信息存儲在數據庫中的名爲tablemaster的metatable中,並存儲了許多與登錄相關的信息。其中一個字段指示是否記錄該表的記錄。 我在上下文中調用保存更改時記錄審計線索,即在決定是否記錄這些表時完成。 元表tablemaster是在應用程序啓動的存儲器中取出,所以檢查的細節沒有往返。希望這可以幫助。