我想在每個數據庫表中插入createdBy,modifiedBy,createDate,modifiedDate列以管理用戶活動。我應該在哪裏管理createdBy,modifiedBy,createDate和modifiedDate?
這是我第一次嘗試做到這一點。有沒有我能遵循的最佳做法?任何設計模式都能很好地管理這個?
我首先想到的是做這在我的商業邏輯層,並在每一個業務類插入和更新的方法,我做這樣的事情:
class.createDate = DateTime.Now;
或
class.modifiedDate = DateTime.Now;
class.modifiedBy = CurrentUser.Id;
或
class.createdBy = CurrentUser.Id;
還是有更好的辦法?
布賴恩
用戶名或userId是誰做的動作? – 2010-07-27 13:07:46
是的,這需要通過業務層完成。但是,如果有人使用數據庫管理工具直接操縱數據,我會在數據庫級別使用默認值。這樣,即使業務層/應用程序被繞過,用戶名也會被蓋印。 – Krip 2010-07-27 15:19:53
我還沒有考慮過有人會直接從數據庫中做些什麼。這是一個好點。 – 2010-07-28 01:24:24