【发布时间】:2012-04-28 01:25:54
【问题描述】:
我正在使用 NHibernate 并寻找一种解决方案,可以让我审核对实体中所有字段的更改。我希望能够为每个实体创建一个历史表,即用户 - > UsersHistory,它将具有与用户表相同的结构和其他字段,如操作类型(更新、删除)、进行更改的用户的用户 ID 等。我不'不想为每个实体定义这样的类。我正在寻找类似History<T>(即History<User>)的东西,因为这些条目不属于我的域,只会用于准备对实体所做的更改列表。我还认为在代码中创建对这些表的插入而不是创建 sql 触发器会更好。基本上,我只需要在更新或删除时在历史表中创建一个记录副本,并且我希望插入由 NHibernate 生成。我还需要从历史表中读取记录——正如我所说,这些表将由实体字段和一些常见的历史字段组成。
我找不到有关如何创建此类解决方案的指导。如果我已经在实体上有这样的字段,我能找到的只是添加 UserModified、UpdatedTimestamp 等。但是,我需要实体的完整历史记录,而不仅仅是上次更改条目的信息。
提前感谢您的帮助。
【问题讨论】:
标签: c# .net hibernate nhibernate