Take-satsen (Visual Basic)
Returnerar ett angivet antal sammanhängande element från början av en samling.
Take count
count
Obligatoriska. Ett värde eller ett uttryck som utvärderas till antalet element i sekvensen som ska returneras.
Satsen Take
gör att en fråga innehåller ett angivet antal sammanhängande element från början av en resultatlista. Antalet element som ska inkluderas anges av parametern count
.
Du kan använda Take
-satsen med Skip
-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. I det här fallet Take
måste satsen anges efter Skip
-satsen.
När du använder Take
-satsen i en fråga kan du också behöva se till att resultaten returneras i en ordning som gör att satsen kan Take
inkludera de avsedda resultaten. Mer information om hur du beställer frågeresultat finns i Order By Clause (Order By Clause).
Du kan använda TakeWhile
-satsen för att ange att endast vissa element ska returneras, beroende på ett angivet villkor.
I följande kodexempel används Take
-satsen tillsammans med Skip
-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 använder Take
-satsen för att returnera en sida med kunder som börjar från det 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
Feedback om .NET
.NET är ett öppen källkod projekt. Välj en länk för att ge feedback: