Я использую сочетание Jon Skeet's GetHashCode и MSDN Guidelines for Overloading Equals для реализации моих методов Equals и GetHashCode. Однако одно дело беспокоило меня.Свойства или поля в Equals и GetHashCode?
Должен ли я выполнять их проверку против фактических полей в классе или их свойств?
Кроме того, что касается свойств родительского класса с частными (поэтому я не могу получить к ним доступ) - должен ли я также проверять их, а затем проверить их через их свойства?
Это зависит от вашего определения равных. –