Ich habe eine List<MyObj>
mit der class MyObj : IComparable
. Ich schrieb die Methode CompareTo
in der MyObj
Klasse über die Schnittstelle IComparable
, aber wenn ich die List<MyObj>.Contains(myObjInstance)
verwende, gibt es false
zurück, wenn es true
sein sollte.Modify List.Contains Verhalten
Ich bin mir nicht sicher, ich verstehe, wie ich fortfahren muss, um sicherzustellen, dass die List
verwendet meine benutzerdefinierte Vergleichsmethode beim Aufruf dann Contains
Funktion.
Hier ist meine compareTo Umsetzung:
#region IComparable Members
public int CompareTo(object obj)
{
MyObj myObj = (MyObj)obj;
return String.Compare(this.Symbol, myObj.Symbol, true);
}
#endregion
Beachten Sie die Symbol-Eigenschaft ist eine Zeichenfolge.
Um zu verdeutlichen, habe ich einen Stop-Point in dieser compareTo-Methode gesetzt und es geht nicht einmal dort hinein.
Wer hat das jemals probiert?
Danke.
Können Sie uns Ihren Code zeigen? –
Speziell die Implementierung von CompareTo –