2013-08-31 12 views

Antwort

2

Verwendung dieses

listCustomFields.sort(); 
+2

Hey @MurtazaMunshi Ich verstehe nicht, warum Sie diese Antwort auswählen. Marcins Antwort ist schneller und besser geschrieben. Wenn es mehr als eine Antwort gibt, sehen sie gleich aus, wählen Sie die schnellste und beste Qualität. –

+2

Entschuldigung, ich bin neu im Stack Überlauf ich donno die Regeln hier. Ich werde deine Worte im Kopf behalten. Danke, dass du mich geführt hast. –

21

Sie in aufsteigender Reihenfolge anordnen wollen LINQ OrderBy Methode verwenden können (es wird erzeugen neue List<string> mit Artikel sortiert):

var ordered = listCustomField.OrderBy(x => x).ToList(); 

oder List<T>.Sort Verfahren (es wird die Liste an Ort und Stelle sortieren):

listCustomField.Sort(); 
+0

Ich denke, das ist die bessere Antwort, weil ich es in absteigender Reihenfolge tun musste, und linq unterstützt dies – mmeasor

1

Sie können OrderBy wie verwenden;

Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge.

listCustomFields = listCustomFields.OrderBy(n => n).ToList(); 

Als Alternative können Sie List<T>.Sort Method auch verwenden.

List<String> listCustomFields = new List<String>() { "FirstName", "MiddleName", "Class" }; 
listCustomFields = listCustomFields.OrderBy(n => n).ToList(); 

foreach (var item in listCustomFields) 
{ 
    Console.WriteLine(item); 
} 

Ausgabe wird;

Class 
FirstName 
MiddleName 

Hier ein DEMO.

0

Sie brauchen nicht LINQ dafür: anstatt eine sortierte Kopie zu erstellen, können Sie Ihre Liste an Ort und Stelle durch den Aufruf Sort() Methode auf sie sortieren:

listCustomFields.Sort(); 

Die Die Reihenfolge ist implizit aufsteigend. Wenn Sie dies ändern müssen, geben Sie einen benutzerdefinierten Vergleich an.

Verwandte Themen