3
我在SQL Server 2008數據庫中有一個審計表,它跟蹤表中所做的所有更改。它做得很好,除了無法捕獲當前登錄用戶的用戶名,因爲我的連接字符串爲所有連接使用一個用戶名。在實體框架1.0中的SaveChanges後觸發存儲過程
這個應用程序是用ASP.NET MVC編寫的,這就是爲什麼我有用戶名存儲在連接字符串中。
問題是:我如何傳遞一個用戶名到這個表後我調用SaveChanges函數?
我在SQL Server 2008數據庫中有一個審計表,它跟蹤表中所做的所有更改。它做得很好,除了無法捕獲當前登錄用戶的用戶名,因爲我的連接字符串爲所有連接使用一個用戶名。在實體框架1.0中的SaveChanges後觸發存儲過程
這個應用程序是用ASP.NET MVC編寫的,這就是爲什麼我有用戶名存儲在連接字符串中。
問題是:我如何傳遞一個用戶名到這個表後我調用SaveChanges函數?
請勿直接使用SaveChanges
。創建自己的方法(可以是擴展方法),它將調用SaveChanges
並運行其他代碼。每次要保存更改時都使用此方法。
不好的一面是,您可以忘記調用您的方法並直接使用SaveChanges
。要處理它,你必須重構你的代碼並將ObjectContext
隱藏到一些包裝器 - 庫。在存儲庫上公開Save
方法並在那裏實現您的保存邏輯。
拉迪斯拉夫,感謝您的建議,下週我會試一試 – Alex 2010-09-10 17:53:30