Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vrátí zadaný počet souvislých prvků od začátku kolekce.
Syntaxe
Take count
Součástky
count
Povinné. Hodnota nebo výraz, který se vyhodnotí jako počet prvků sekvence, které se mají vrátit.
Poznámky
Klauzule Take způsobí, že dotaz zahrne zadaný počet souvislých prvků od začátku seznamu výsledků. Parametr určuje count počet prvků, které se mají zahrnout.
Klauzuli Take s Skip klauzulí můžete použít k vrácení rozsahu dat z libovolného segmentu dotazu. Uděláte to tak, že předáte index prvního prvku rozsahu Skip klauzuli a velikost rozsahu Take do klauzule. V tomto případě Take musí být klauzule zadána za klauzulí Skip .
Při použití Take klauzule v dotazu může být také nutné zajistit, aby výsledky byly vráceny v pořadí, které umožní Take klauzuli zahrnout zamýšlené výsledky. Další informace o řazení výsledků dotazu naleznete v tématu Order By – klauzule.
Klauzuli TakeWhile můžete použít k určení, že se vrátí pouze určité prvky v závislosti na zadané podmínce.
Příklad
Následující příklad kódu používá Take klauzuli společně s Skip klauzulí k vrácení dat z dotazu na stránkách. Funkce GetCustomers používá Skip klauzuli k obejití zákazníků v seznamu, dokud zadaná počáteční hodnota indexu Take a pomocí klauzule vrátí stránku zákazníků počínaje danou hodnotou indexu.
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