Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
En sorteringsåtgärd beställer elementen i en sekvens baserat på ett eller flera attribut. Det första sorteringskriteriet utför en primär sortering av elementen. Genom att ange ett andra sorteringsvillkor kan du sortera elementen i varje primär sorteringsgrupp.
Följande bild visar resultatet av en alfabetisk sorteringsåtgärd på en sekvens med tecken.
Standardmetoderna för frågeoperatorer som sorterar data visas i följande avsnitt.
Metoder
| Metodnamn | Beskrivning | Syntax för Visual Basic-frågeuttryck | Mer information |
|---|---|---|---|
| Sortera efter | Sorterar värden i stigande ordning. | Order By |
Enumerable.OrderBy Queryable.OrderBy |
| SorteraFallande | Sorterar värden i fallande ordning. | Order By … Descending |
Enumerable.OrderByDescending Queryable.OrderByDescending |
| ThenBy | Utför en sekundär sortering i stigande ordning. | Order By …, … |
Enumerable.ThenBy Queryable.ThenBy |
| SedanUrordningAvtagande | Utför en sekundär sortering i fallande ordning. | Order By …, … Descending |
Enumerable.ThenByDescending Queryable.ThenByDescending |
| Vända | Ändrar ordningen på elementen i en samling. | Ej tillämpbart. | Enumerable.Reverse Queryable.Reverse |
Exempel på frågeuttryckssyntax
Primära sorteringsexempel
Primär stigande sortering
I följande exempel visas hur du använder Order By -satsen i en LINQ-fråga för att sortera strängarna i en matris efter stränglängd, i stigande ordning.
Dim words = {"the", "quick", "brown", "fox", "jumps"}
Dim sortQuery = From word In words
Order By word.Length
Select word
Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' the
' fox
' quick
' brown
' jumps
Primär fallande sortering
Nästa exempel visar hur du använder Order By Descending -satsen i en LINQ-fråga för att sortera strängarna efter deras första bokstav, i fallande ordning.
Dim words = {"the", "quick", "brown", "fox", "jumps"}
Dim sortQuery = From word In words
Order By word.Substring(0, 1) Descending
Select word
Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' the
' quick
' jumps
' fox
' brown
Sekundära sorteringsexempel
Sekundär stigande sortering
I följande exempel visas hur du använder Order By -satsen i en LINQ-fråga för att utföra en primär och sekundär typ av strängarna i en matris. Strängarna sorteras främst efter längd och i andra hand efter den första bokstaven i strängen, båda i stigande ordning.
Dim words = {"the", "quick", "brown", "fox", "jumps"}
Dim sortQuery = From word In words
Order By word.Length, word.Substring(0, 1)
Select word
Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' fox
' the
' brown
' jumps
' quick
Sekundär fallande sortering
Nästa exempel visar hur du använder Order By Descending -satsen i en LINQ-fråga för att utföra en primär sortering, i stigande ordning och en sekundär sortering, i fallande ordning. Strängarna sorteras främst efter längd och i andra hand efter den första bokstaven i strängen.
Dim words = {"the", "quick", "brown", "fox", "jumps"}
Dim sortQuery = From word In words
Order By word.Length, word.Substring(0, 1) Descending
Select word
Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' fox
' the
' quick
' jumps
' brown