Mam List<MyObj>
z class MyObj : IComparable
. Napisałem metodę CompareTo
w klasie MyObj
na interfejsie IComparable
, ale kiedy używam List<MyObj>.Contains(myObjInstance)
, zwraca ona false
, gdy powinna być true
.Modyfikuj listę. Zachowuje zachowanie
Nie jestem pewien, czy rozumiem, w jaki sposób należy wykonać, aby upewnić się, że List
używa mojej niestandardowej metody porównywania podczas wywoływania funkcji Contains
.
Oto moja realizacja compareTo:
#region IComparable Members
public int CompareTo(object obj)
{
MyObj myObj = (MyObj)obj;
return String.Compare(this.Symbol, myObj.Symbol, true);
}
#endregion
Uwaga własnością Symbol jest ciągiem.
Aby wyjaśnić, umieściłem punkt zatrzymania w tej metodzie compareTo i nawet tam nie wchodzi.
Ktoś kiedykolwiek próbował tego?
Dzięki.
Czy możesz pokazać nam swój kod? –
Wykonanie tej konkretnie implementacji CompareTo –