【发布时间】:2023-03-28 13:32:02
【问题描述】:
我正在尝试更改 PreUpdateEventListener 中的实体属性值,但是新值没有持久化,生成的 sql 包含该属性的旧值。
代码很简单:
public bool OnPreUpdate(PreUpdateEvent @event)
{
var p = @event.Entity.GetType().GetProperty("audit_version");
if (p != null && p.CanWrite && p.CanRead)
{
int val = (int)p.GetValue(@event.Entity, null);
p.SetValue(@event.Entity, val + 1, null);
}
return false;
}
和配置 configuration.EventListeners.PreUpdateEventListeners = new IPreUpdateEventListener[1] { new AuditListener() };
非常感谢!
【问题讨论】:
标签: nhibernate events listener