Tomar cláusula (Visual Basic)
Retorna um número especificado de elementos contíguos do início de uma coleção.
Take count
Partes
- count
Obrigatório.Um valor ou uma expressão que avalia ao número de elementos da sequência a retornar.
Comentários
A cláusula Take faz com que uma dúvida inclua um número especificado de elementos contíguos do início de uma lista de resultados.O número de elementos para incluir é especificado pelo parâmetro count.
Você pode usar a cláusula Take com a cláusula Skip para retornar um intervalo de dados de qualquer segmento de uma consulta.Para fazer isso, passe o índice do primeiro elemento do intervalo para a cláusula Skip e o tamanho do intervalo para a cláusula Take.Nesse caso, a cláusula Take deve ser especificada após a cláusula Skip.
Ao usar a cláusula Take em uma pergunta, você também precisará garantir que os resultados são retornados em uma ordem que permitirá que a cláusula Take inclua os resultados pretendidos.Para obter mais informações sobre pedido resultados de pergunta, consulte Ordem By cláusula (Visual Basic).
Você pode usar a cláusula TakeWhile para especificar que apenas determinados elementos serão retornado, dependendo de uma condição fornecida.
Exemplo
O exemplo de código a seguir utiliza a cláusula Take juntamente com a cláusula Skip para retornar dados de uma consulta em páginas.A função GetCustomers usa a cláusula Skip para circundar os clientes na lista até que o valor de índice inicial fornecido e a cláusula Take para retornar uma página de clientes a partir desse valor de índice.
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
Consulte também
Conceitos
Introdução ao LINQ no Visual Basic
Referência
Cláusula Select (Visual Basic)
A partir da cláusula (Visual Basic)
Ordem By cláusula (Visual Basic)
Levar ao cláusula (Visual Basic)
Ignorar a cláusula (Visual Basic)