在我的应用程序中,我们需要捕获记录的创建和修改时间以及用户执行这些操作的情况。所以我可能有一个类似的对象:
public class Product
{
int Id;
int Name;
DateTime CreatedOn;
int CreatedByUserId;
DateTime LastModifiedOn;
int LastModifiedByUserId;
}
在 NHibernate 中处理这些的最佳实践是什么?通过使用拦截器类似于所描述的内容 here ?
最佳答案
我认为没有“最佳”实践,但事件监听器的使用对此更为常见。在 http://ayende.com/Blog/archive/2009/04/29/nhibernate-ipreupdateeventlistener-amp-ipreinserteventlistener.aspx 有一个很好的例子
您需要考虑的一件事是您需要将该 userId 存储在某处。我目前正在通过在启动时在监听器上分配静态属性来做到这一点。它不漂亮,但它完成了工作。
关于nhibernate - 设置上次修改时间和使用 NHibernate 修改的人员的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2387249/