使用Nhibernate维护表历史记录
本文关键字:历史 记录 维护 Nhibernate 使用 | 更新日期: 2023-09-27 18:20:01
我有一种情况,我必须维护表的历史记录。
例如:我有PaymentTransaction表,我想保留PaymentTransactionHistory用于审计目的。
我们在NHIbernate有什么可以用来实现这一点的吗。我读过IInterceptor和Events,不知道它们在我的情况下是否有用。
我正在使用Fluent NHIbernate。
非常感谢
NHibernate Envers也可能是您的一个选项,但对于您提到的用法来说,可能有些过头了。
在我的项目中,这是由一个拦截器完成的,使用以下方法:
- 当某些内容被删除时,请在OnDelete中进行处理
- 当有东西插入数据库时,在OnSave中进行处理
- 当某些内容发生更改时,请在OnFlushDirty中进行处理
- 还有一些其他处理收集的方法
试试它们,并不难。