Comment empêcher NHibernate de supprimer une seule entité d'une classe spécifique? Une manière programmatique que j'utilise actuellement consiste à vérifier le champ unique "Nom" de l'entité.NHibernate- Empêche la suppression sur une entité particulière (c'est-à-dire en lecture seule)
Voici le scénario: J'ai une personne et un groupe. Le groupe peut avoir des personnes et d'autres groupes. Si le groupe nommé "Admins" est tenté d'être supprimé, il ne le sera pas, en raison des contraintes au niveau des transactions que j'applique (en vérifiant spécifiquement la colonne/champ 'Nom' du groupe, car ceci est unique). Donc c'est bien. Mais maintenant je pense que si un autre groupe est créé et que les "Admins" deviennent un sous-groupe, la vérification échouera. Cela signifiera la suppression de "Admins". Donc, je cherche un meilleur moyen, autre que de traverser l'arbre de confinement parent/enfant, par ex. en utilisant NHibernate
Je ne peux pas utiliser une restriction de classe comme 'class Mutable = false', je veux dire avoir une restriction en lecture seule sur une ou deux entités individuelles d'une certaine classe.
Cordialement,
_NT
Mais cela implique de vérifier beaucoup de choses manuellement. N'y a-t-il aucune façon NHibernate-y de le faire? –
Désolé, je ne peux pas donner une meilleure suggestion pour votre cas. Laissez-moi le dire de cette façon. "Contrôler beaucoup de choses manuellement" est une question de complexité du domaine. ORM ne peut pas aider à ce sujet. Aucune infraction ici, mais il peut être temps de repenser la conception de l'objet de domaine, si ce n'est pas trop tard. – Canton
Pourquoi repenser la conception d'un objet de domaine? J'ai juste besoin de faire en sorte que quelques entités lisent - de la meilleure façon possible - une meilleure façon de faire que de faire des ifs et des elses, si cela existe ... D'où ma question. –