2010-09-09 40 views
3

我在SQL Server 2008數據庫中有一個審計表,它跟蹤表中所做的所有更改。它做得很好,除了無法捕獲當前登錄用戶的用戶名,因爲我的連接字符串爲所有連接使用一個用戶名。在實體框架1.0中的SaveChanges後觸發存儲過程

這個應用程序是用ASP.NET MVC編寫的,這就是爲什麼我有用戶名存儲在連接字符串中。

問題是:我如何傳遞一個用戶名到這個表後我調用SaveChanges函數?

回答

1

請勿直接使用SaveChanges。創建自己的方法(可以是擴展方法),它將調用SaveChanges並運行其他代碼。每次要保存更改時都使用此方法。

不好的一面是,您可以忘記調用您的方法並直接使用SaveChanges。要處理它,你必須重構你的代碼並將ObjectContext隱藏到一些包裝器 - 庫。在存儲庫上公開Save方法並在那裏實現您的保存邏輯。

+0

拉迪斯拉夫,感謝您的建議,下週我會試一試 – Alex 2010-09-10 17:53:30