Я написал класс, полученный из IEqualityComparer<T>, который отлично подходит для запроса LINQ, в котором я нуждался.
Как я понимаю, сначала вызывается GetHashCode() (fast), затем Equals() (немного медленнее), если хэш-код является таким же, для таких операций.
Однако, когда вы используете его для прямых сравнений, вручную, я использую что-то вроде
return new MyIEqualityComparer().Equals(objA,objB);
Которая отказывается от проверки равенства GetHashCode(). Есть ли способ сравнения objA - objB, который автоматически не пропускает проверку GetHashCode()?
Думаю, я надеялся, что objA.Equals() будет иметь перегрузку, которая приняла аргумент, полученный из IEqualityComparer<T>.