Вопрос связанный с Equals C#
Ответы (1 шт):
Автор решения: Vyacheslav Benedichuk
→ Ссылка
Метод Object.Equals не знает ничего об особенностях реализации вашего класса Test. Он просто проверяет совпадение указателя на текущий объект и на переданный в него в качестве параметра.
Что бы у вас заработало как ожидается, вам нужно реализовать свой вариант метода Equals
Например так:
public override bool Equals(Object obj)
{
if ((obj == null) || !this.GetType().Equals(obj.GetType()))
{
return false;
}
else {
Test o = (Test) obj;
return (x == o.x);
}
}
Так же рекомендую почитать информацию о методе equals в MSDN. Там очень подробно разобрано.
