当Nhibernate的不同听众被通知时?

时间:2015-02-11 07:23:55

标签: hibernate nhibernate orm

我想知道这些听众何时收到通知?我没有收到详细的文件。

  1. DefaultAutoFlushEventListener
  2. DefaultPersistEventListener
  3. DefaultLoadEventListener
  4. DefaultSaveOrUpdateEventListener
  5. DefaultDeleteEventListener
  6. DefaultFlushEntityEventListener

1 个答案:

答案 0 :(得分:1)

来自NHibernate documentation

  

12.2。活动系统

     

如果您必须对持久层中的特定事件做出反应,   您也可以使用NHibernate2事件架构。事件系统   可以作为拦截器的补充或替代使用。

     

基本上所有ISession接口的方法都与之相关   一个事件。你有一个LoadEvent,一个FlushEvent等(请参阅XML   完整的配置文件XSD或NHibernate.Event命名空间   已定义事件类型的列表)。当请求其中一个时   方法,ISession生成一个适当的事件并将其传递给   为该类型配置的事件侦听器。开箱即用,这些   侦听器实现与这些方法始终相同的处理   导致。但是,您可以自由地实现其中一个的自定义   监听器接口(即,LoadEvent由。处理)   在中注册实现ILoadEventListener接口)   在哪种情况下,他们的实施将负责处理   任何由ISession发出的Load()请求。