Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Sortieren von Daten

Bei einem Sortiervorgang werden die Elemente einer Sequenz auf Grundlage eines oder mehrerer Attribute geordnet. Das erste Sortierkriterium führt eine primäre Sortierung der Elemente aus. Sie können die Elemente innerhalb jeder primären Sortiergruppe sortieren, indem Sie ein zweites Sortierkriterium angeben.

Die folgende Illustration zeigt die Ergebnisse eines alphabetischen Sortiervorgangs an einer Folge von Zeichen an.

LINQ-Sortierungsvorgang

Die Standardabfrageoperator-Methoden zur Datensortierung werden im folgenden Abschnitt aufgelistet.

Methodenname

Beschreibung

C#-Abfrageausdruckssyntax

Visual Basic-Abfrageausdruckssyntax

Weitere Informationen

OrderBy

Sortiert Werte in aufsteigender Reihenfolge.

orderby

Order By

Enumerable.OrderBy

Queryable.OrderBy

OrderByDescending

Sortiert Werte in absteigender Reihenfolge.

orderby … descending

Order By … Descending

Enumerable.OrderByDescending

Queryable.OrderByDescending

ThenBy

Führt eine sekundäre Sortierung in aufsteigender Reihenfolge aus.

orderby …, …

Order By …, …

Enumerable.ThenBy

Queryable.ThenBy

ThenByDescending

Führt eine sekundäre Sortierung in absteigender Reihenfolge aus.

orderby …, … descending

Order By …, … Descending

Enumerable.ThenByDescending

Queryable.ThenByDescending

Reverse

Kehrt die Reihenfolge der Elemente in einer Auflistung um.

Nicht zutreffend.

Nicht zutreffend.

Enumerable.Reverse<TSource>

Queryable.Reverse<TSource>

Beispiele von primärer Sortierung

Primäre aufsteigende Sortierung

Das folgende Beispiel zeigt, wie die orderby-Klausel (Order By-Klausel in Visual Basic) in einer LINQ-Abfrage verwendet wird, um die Zeichenfolgen in einem Array nach Zeichenfolgenlänge in aufsteigender Reihenfolge zu sortieren.



            string[] words = { "the", "quick", "brown", "fox", "jumps" };

            IEnumerable<string> query = from word in words
                                        orderby word.Length
                                        select word;

            foreach (string str in query)
                Console.WriteLine(str);

            /* This code produces the following output:

                the
                fox
                quick
                brown
                jumps
            */



Primäre absteigende Sortierung

Das nächste Beispiel zeigt, wie die orderbydescending-Klausel (Order By Descending-Klausel in Visual Basic) in einer LINQ-Abfrage verwendet wird, um die Zeichenfolgen nach ihrem ersten Buchstaben in absteigender Reihenfolge zu sortieren.



            string[] words = { "the", "quick", "brown", "fox", "jumps" };

            IEnumerable<string> query = from word in words
                                        orderby word.Substring(0, 1) descending
                                        select word;

            foreach (string str in query)
                Console.WriteLine(str);

            /* This code produces the following output:

                the
                quick
                jumps
                fox
                brown
            */



Beispiele von sekundärer Sortierung

Sekundäre aufsteigende Sortierung

Das folgende Beispiel zeigt, wie die orderby-Klausel (Order By-Klausel in Visual Basic) in einer LINQ-Abfrage verwendet wird, um die Zeichenfolgen in einem Array primär und sekundär zu sortieren. Die Zeichenfolgen werden primär der Länge nach und sekundär nach dem ersten Buchstaben der Zeichenfolge sortiert, beides in aufsteigender Reihenfolge.



            string[] words = { "the", "quick", "brown", "fox", "jumps" };

            IEnumerable<string> query = from word in words
                                        orderby word.Length, word.Substring(0, 1)
                                        select word;

            foreach (string str in query)
                Console.WriteLine(str);

            /* This code produces the following output:

                fox
                the
                brown
                jumps
                quick
            */



Sekundäre absteigende Sortierung

Das nächste Beispiel zeigt, wie die orderbydescending-Klausel (Order By Descending-Klausel in Visual Basic) in einer LINQ-Abfrage verwendet wird, um eine primäre Sortierung in aufsteigender und eine sekundäre Sortierung in absteigender Reihenfolge auszuführen. Die Zeichenfolgen werden primär der Länge nach und sekundär nach dem ersten Buchstaben der Zeichenfolge sortiert.



            string[] words = { "the", "quick", "brown", "fox", "jumps" };

            IEnumerable<string> query = from word in words
                                        orderby word.Length, word.Substring(0, 1) descending
                                        select word;

            foreach (string str in query)
                Console.WriteLine(str);

            /* This code produces the following output:

                the
                fox
                quick
                jumps
                brown
            */



Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?