1


1

NHibernate:なぜILifecycle.OnUpdateが毎回呼び出されないのですか?

NHibernate_reference.pdf、26ページ:

_ ILifecycle.OnUpdate()は、オブジェクトの永続状態が更新されるたびに呼び出されるわけではないことに注意してください。 一時オブジェクトがISession.Update()に渡された場合にのみ呼び出されます。 _

なぜそれをリンクするのか?

2 Answer


2


代わりにIInterceptorを使用する必要があります


1


ILifecycleは非推奨です。 James Lが書いたように、代わりにIInterceptor実装を使用する必要があります。 あなたが引用したドキュメントの私の解釈では、OnUpdatedイベントはUpdateメソッドからのみ発生します。 つまり、イベントは、Updateメソッドが呼び出されたことをサブスクライバーに通知するように設計されています。