Hoppa över sats (Visual Basic)
Kringgår ett angivet antal element i en samling och returnerar sedan de återstående elementen.
Syntax
Skip count
Delar
count
Obligatoriska. Ett värde eller ett uttryck som utvärderas till antalet element i sekvensen som ska hoppa över.
Kommentarer
Satsen Skip
gör att en fråga kringgår element i början av en resultatlista och returnerar de återstående elementen. Antalet element som ska hoppa över identifieras av parametern count
.
Du kan använda Skip
-satsen med Take
-satsen för att returnera ett dataintervall från valfritt segment av en fråga. För att göra detta skickar du indexet för det första elementet i intervallet till Skip
-satsen och storleken på intervallet till Take
-satsen.
När du använder Skip
-satsen i en fråga kan du också behöva se till att resultaten returneras i en ordning som gör att satsen kan Skip
kringgå de avsedda resultaten. Mer information om hur du beställer frågeresultat finns i Order By Clause (Order By Clause).
Du kan använda SkipWhile
-satsen för att ange att endast vissa element ignoreras, beroende på ett angivet villkor.
Exempel
I följande kodexempel används Skip
-satsen tillsammans med Take
-satsen för att returnera data från en fråga på sidor. Funktionen GetCustomers
använder Skip
-satsen för att kringgå kunderna i listan tills det angivna startindexvärdet används och satsen används Take
för att returnera en sida med kunder som börjar från indexvärdet.
Public Sub PagingSample()
Dim pageNumber As Integer = 0
Dim pageSize As Integer = 10
Dim customersPage = GetCustomers(pageNumber * pageSize, pageSize)
Do While customersPage IsNot Nothing
Console.WriteLine(vbCrLf & "Page: " & pageNumber + 1 & vbCrLf)
For Each cust In customersPage
Console.WriteLine(cust.CustomerID & ", " & cust.CompanyName)
Next
Console.WriteLine(vbCrLf)
pageNumber += 1
customersPage = GetCustomers(pageNumber * pageSize, pageSize)
Loop
End Sub
Public Function GetCustomers(ByVal startIndex As Integer,
ByVal pageSize As Integer) As List(Of Customer)
Dim customers = GetCustomerList()
Dim returnCustomers = From cust In customers
Skip startIndex Take pageSize
If returnCustomers.Count = 0 Then Return Nothing
Return returnCustomers
End Function