Come posso fare il lavoro Distinct()
metodo con un elenco di oggetto personalizzato (Href
in questo caso), qui è ciò che l'oggetto corrente assomiglia:L'utilizzo di distinte con lista di oggetti personalizzati
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
}
io non sono del tutto sicuro perché siamo l'override un metodo dell'interfaccia –
@Burnzy: Non ci sono interfacce coinvolte qui. Questi metodi sono ereditati da 'Object'. – SLaks