Devi utilizzare l'interfaccia IComparer.
Per utilizzarla però devi anche aggiungere il metodo "CompareTo" alla tua classe:
Il codice per effettuare la comparazione poi è questo:codice:public class Soluzione() : IComparable { ... ... public int CompareTo(Soluzione s2) { return this.valore.CompareTo(s2.valore); } }
e la chiamate è questa:codice:class CompareSoluzioneByValue<Soluzione> : IComparer<Soluzione> { public int Comapre(Soluzione x, Soluzione y) { return x.CompareTo(y); } }
codice:IComparer<Soluzione> myComparer = new CompareSoluzioneByValue<Soluzione>(); myList.Sort(myComparer);
UPDATE:
puoi usare anche una lambda:
codice:myList.Sort((sol1, sol2) => {return sol1.CompareTo(sol2);});

Rispondi quotando