2010-01-03 5 views
21

Que fait Cascade dans Nhibernate moyenne?Nhibernate Cascade

Je vois beaucoup d'options en cascade:

  • Supprimer
  • Tous
  • AllDeleteOrphan
  • DeleteOrphan
  • SaveUpdate

Pouvez-vous expliquer ces derniers avec des exemples et leurs distinctions?

Répondre

25

Cela signifie appliquer l'action aux éléments associés d'un élément.

S'il vous plaît voir: NHibernate Cascades: the different between all, all-delete-orphans and save-update:

  • aucun - ne font pas de cascades, laissez les utilisateurs les gérer par eux-mêmes.

  • save-update - lorsque l'objet est enregistrée/mise à jour, vérifiez les associations et enregistrer/mettre à jour tout objet qui l'exige (y compris la sauvegarde/mettre à jour les associations dans de nombreux à plusieurs scénarios ). Delete - lorsque l'objet est supprimé, supprimez tous les objets de l'association .

  • delete-orphan - lorsque l'objet est supprimé, supprimez tous les objets de l'association. Dans en outre, lorsqu'un objet est supprimé de l'association et non associé à un autre objet (orphelin), supprimez-le également.

  • tout - lorsqu'un objet est de sauvegarder/mise à jour/supprimer, cocher les associations et sauvegarde/mise à jour/supprimer tous les objets trouvés.

  • all-delete-orphan - lorsqu'un objet est sauvegarde/mise à jour/supprimer, vérifier les associations et sauvegarde/mise à jour/supprimer tous les objets trouvés. Dans en plus de cela, lorsqu'un objet est supprimé de l'association et non associé à un autre objet (orphelin), supprimez-le également.

+1

Je ne comprends pas la différence entre tout et tout-delete-orphan pourriez-vous s'il vous plaît expliquer? – joncodo

+1

@JonathanO Si vous choisissez tout et que vous supprimez une association, cela supprimera seulement l'association et non l'objet associé. si vous choisissez all-delete-orphelin, cela supprimera également l'objet associé. – iboware

Questions connexes