Tengo una clase que implementa IComparable.C# - ¿Cómo implementar múltiples comparadores para una clase de IComparable <T>?
public class MyClass : IComparable<MyClass>
{
public int CompareTo(MyClass c)
{
return this.whatever.CompareTo(c.whatever);
}
etc..
}
Entonces puede llamar al método especie de una lista genérica de mi clase
List<MyClass> c = new List<MyClass>();
//Add stuff, etc.
c.Sort();
y tienen la lista ordenada de acuerdo a mi comparador.
¿Cómo especifico más comparadores para ordenar mi colección de diferentes maneras según las otras propiedades de MyClass para permitir a los usuarios ordenar mi colección de diferentes maneras?
+1 aunque se puede escribir de forma más sucinta con una expresión lambda :) –
Impresionante, gracias. –
Kevin, he luchado con esto durante 2 días, y no puedo entender lo que está haciendo. Tu camino funciona, pero ¿cómo se escribiría este método estático sin escribirlo como "delegado"? – jp2code