nhibernate-envers与乐观并发
我正在使用nhibernate envers进行审计。为数据库中的每个表创建相应的审核表 Envers需要两个必填字段:一个版本和另一个时间戳 但为了实现乐观并发,主表中还需要version字段 假设:TableA{id,version,name} 然后根据envers,使用have:{id,version,name,revision,revisionType}创建审计表 “审核表:版本”和“修订版”中的字段完全相同,都包含条目的版本 如果我从主表中删除了version字段,那么乐观并发将不适用于nhibernate,对于envers,必须指定一个修订字段nhibernate-envers与乐观并发,nhibernate,nhibernate-envers,Nhibernate,Nhibernate Envers,我正在使用nhibernate envers进行审计。为数据库中的每个表创建相应的审核表 Envers需要两个必填字段:一个版本和另一个时间戳 但为了实现乐观并发,主表中还需要version字段 假设:TableA{id,version,name} 然后根据envers,使用have:{id,version,name,revision,revisionType}创建审计表 “审核表:版本”和“修订版”中的字段完全相同,都包含条目的版本 如果我从主表中删除了version字段,那么乐观并发将不适用
如何处理这种情况?Envers
version
和乐观并发version
字段是不同的。如果这些是默认名称,您可能应该重命名其中一个。理解,但有两个字段包含完全相同的信息并不是一件好事:(.因此,尝试寻找一种解决方案,我可以使用它来避免它…嗯,信息是不同的。乐观锁定版本应该只在“活动”(当前)实体。对其进行审核没有意义。另一方面,Envers版本仅存在于已审核的实体中。