如何截取/防止使用(流畅的)NHibernate修改属性?

时间:2018-07-25 20:08:55

标签: nhibernate properties fluent-nhibernate

如果我有一个名为Employee的模型(类),如何拦截/修改属性更改?

例如:

Employee e = session.Get<Employee>(1);
e.Status = EmployeeStatus.Fired;

如何拦截e.Status的修改内容并将其更改为其他值或抛出错误等?

我知道我可以使用事件(即IPreUpdateEventListener)来修改状态,但是如果可能的话,我希望在分配/修改属性时立即执行此操作。

1 个答案:

答案 0 :(得分:0)

您可以使用NHibernate拦截器实现此行为,请看this article