24

Nhibernateのカスケードとはどういう意味ですか?

カスケードには多くのオプションがあります。

  • 消去
  • 全て
  • AllDeleteOrphan
  • DeleteOrphan
  • SaveUpdate

これらを例とその違いで説明できますか?

4

1 に答える 1

28

これは、アイテムの関連アイテムにアクションを適用することを意味します。

参照してください:NHibernateカスケード:all、all-delete-orphansとsave-updateの違い

  • none-カスケードを実行せず、ユーザーが自分でカスケードを処理できるようにします。

  • save-update-オブジェクトが保存/更新されたら、関連付けを確認し、それを必要とするオブジェクトを保存/更新します(多対多のシナリオでの関連付けの保存/更新を含む)。

  • 削除-オブジェクトが削除されたら、関連付け内のすべてのオブジェクトを削除します。

  • delete-orphan-オブジェクトが削除されたら、関連付け内のすべてのオブジェクトを削除します。また、オブジェクトが関連付けから削除され、別のオブジェクトに関連付けられていない(孤立している)場合は、そのオブジェクトも削除します。

  • all-オブジェクトが保存/更新/削除されている場合、関連付けを確認し、見つかったすべてのオブジェクトを保存/更新/削除します。

  • all-delete-orphan-オブジェクトが保存/更新/削除されている場合、関連付けを確認し、見つかったすべてのオブジェクトを保存/更新/削除します。さらに、オブジェクトが関連付けから削除され、別のオブジェクトに関連付けられていない(孤立している)場合は、そのオブジェクトも削除します。

于 2010-01-03T09:33:49.047 に答える