Remplacer l'opérateur == (égalité) dans NHibernate?
-
09-09-2019 - |
Question
Avec des entités NHibernate, vous êtes censé remplacer Equals et GetHashCode. Est-ce une bonne idée de remplacer l'opérateur == utiliser l'implémentation de Equals aussi?
La solution
Oui, il est un .NET plus général "bonnes pratiques" pour garder Equals()
, operator==
et GethasCode()
cohérente.
Voir Directives pour Surcharger equals () et l'opérateur = = .
Autres conseils
Pourquoi croyez-vous que vous avez besoin de passer outre Equals et GetHashCode lors de l'utilisation de NHibernate? NHibernate garantit l'égalité d'entité pour toute entité accessible dans le même ISession. Voir l'identité des objets dans la documentation.
Sous la direction d'ajouter: Après la relecture de la question et de faire quelques recherches sur Google, je dois admettre que je ne savais pas que l'opérateur d'égalité (==) pourrait être redéfinie en C #.