Почему Microsoft рекомендует пропустить реализацию оператора равенства для ссылочных типов?

Согласно MSDN : Большинство ссылочных типов не должны перегружать оператор равенства, даже если они переопределяют Equals. Однако, если вы реализуете ссылочный тип, который должен иметь семантику значения, например тип комплексного числа, вы должны переопределить оператор равенства.

Как лучше всего реализовать метод equals и оператор равенства для типичного объекта домена, такого как Customer?

Следует ли реализовать метод equals для return true , если идентичности двух сущностей совпадают? Что делать, если сущность не неизменна? Что, если обе сущности новые и их идентификаторы имеют пустые значения. А как насчет оператора равенства?

Как упоминал JaredPar здесь Equals фактически измеряет равенство значений, а == измеряет, являются ли они одной и той же ссылкой.

9
задан Community 23 May 2017 в 11:51
поделиться