Compartilhar via


Cláusula Skip (Visual Basic)

Ignora um número especificado de elementos em uma coleção e, em seguida, retorna os elementos restantes.

Skip count

Partes

  • count
    Obrigatório. Um valor ou uma expressão que retorna o número de elementos da seqüência para ignorar.

Comentários

O Skip cláusula faz com que uma consulta ignorar os elementos no início de uma lista de resultados e retornar os elementos restantes. O número de elementos para ignorar é identificado pelo count parâmetro.

Você pode usar a cláusula Skip com a cláusula Take 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.

Quando você usa o Skip cláusula em uma consulta, você talvez também precise garantir que os resultados são retornados em uma ordem que permitirá que o Skip cláusula para ignorar os resultados pretendidos. Para obter mais informações sobre pedido resultados de pergunta, consulte Cláusula Order By (Visual Basic).

Você pode usar o SkipWhile cláusula para especificar que apenas determinados elementos são ignorados, dependendo de uma condição fornecida.

Exemplo

O exemplo de código a seguir utiliza a cláusula Skip juntamente com a cláusula Take para retornar dados de uma consulta em páginas. O GetCustomers funciona usa a Skip cláusula para ignorar os clientes na lista até que o inicial fornecido indexar o valor e usa o Take cláusula para retornar uma página desse valor de índice a partir de clientes.

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

Referência

Cláusula Select (Visual Basic)

Cláusula From (Visual Basic)

Cláusula Order By (Visual Basic)

Ignorar cláusula While (Visual Basic)

Cláusula Take (Visual Basic)

Conceitos

Introdução a LINQ no Visual Basic

Outros recursos

Consultas (Visual Basic)