Liste sortieren nach mehreren "Spalten2

22/07/2009 - 10:33 von Michael | Report spam
Hallo zusammen,

ich hab eine Liste die ich nicht nur nach einem Begriff sortieren sondern
nach Name und Klassifizierung:

Einzeln mach ich das so:
List.Sort(delegate(CReportItem p1, CReportItem p2) { return
p1.Name.CompareTo(p2.Name); });
List.Sort(delegate(CReportItem p1, CReportItem p2) { return
p1.Klassifizierung.CompareTo(p2.Klassifizierung); });

Wie macht meine beide Sortierbegriffe ein einen Sort, also sortieren nach
Name dann nach Klassifizierung.


Vielen Dank und Gruss
Michael
 

Lesen sie die antworten

#1 Elmar Boye
22/07/2009 - 10:42 | Warnen spam
Hallo Michael,

Michael schrieb:
ich hab eine Liste die ich nicht nur nach einem Begriff sortieren sondern
nach Name und Klassifizierung:

Einzeln mach ich das so:
List.Sort(delegate(CReportItem p1, CReportItem p2) { return
p1.Name.CompareTo(p2.Name); });
List.Sort(delegate(CReportItem p1, CReportItem p2) { return
p1.Klassifizierung.CompareTo(p2.Klassifizierung); });

Wie macht meine beide Sortierbegriffe ein einen Sort, also sortieren
nach Name dann nach Klassifizierung.



Wenn die Namen gleich, sind verwende den Wert Klassifizierung, also:

List.Sort(delegate(CReportItem p1, CReportItem p2)
{
int compare = p1.Name.CompareTo(p2.Name);
if (compare == 0)
compare = p1.Klassifizierung.CompareTo(p2.Klassifizierung);
return compare;
});

Gruß Elmar

Ähnliche fragen