Pour ma propre mise en œuvre d'une méthode Equals(), je veux vérifier un certain nombre de champs internes. Je le fais comme ceci :
...
_myNullableInt == obj._myNullableInt &&
_myString == obj._myString &&
...
Je suppose que cette opération compare les valeurs, y compris les nullités, pour l'égalité et non l'adresse de l'objet (comme le ferait une opération de comparaison d'euqalité de référence) parce que :
Il est dit ainsi pour les "types de valeurs prédéfinies". dans ce document MSDN ici . Je suppose Nullable<int>
est un tel "type de valeur prédéfini" parce qu'il se trouve dans la base de données de l'UE. System
Espace de nom selon ce document MSDN .
Ai-je raison de supposer que les VALEURS sont comparées ici ?
Note : Les tests unitaires ont montré "Oui", mais je voulais être rassuré par d'autres personnes avec cette question, juste au cas où j'aurais manqué quelque chose.