Jak mogę uczynić pracę Distinct()
metodę z listy niestandardowej obiektu (Href
w tym przypadku), tutaj jest to, co obecny obiekt wygląda tak:Zastosowanie odrębnych z listy obiektów niestandardowych
public class Href : IComparable, IComparer<Href>
{
public Uri URL { get; set; }
public UrlType URLType { get; set; }
public Href(Uri url, UrlType urltype)
{
URL = url;
URLType = urltype;
}
#region IComparable Members
public int CompareTo(object obj)
{
if (obj is Href)
{
return URL.ToString().CompareTo((obj as Href).URL.ToString());
}
else
throw new ArgumentException("Wrong data type.");
}
#endregion
#region IComparer<Href> Members
int IComparer<Href>.Compare(Href x, Href y)
{
return string.Compare(x.URL.ToString(), y.URL.ToString());
}
#endregion
}
nie jestem pewien, dlaczego jesteśmy przesłanianie metody interfejsu –
@Burnzy: Nie ma tu żadnego interfejsu. Te metody są dziedziczone z 'Object'. – SLaks