Skip, clause (Visual Basic)
Ignore un nombre spécifié d'éléments dans une collection, puis retourne les éléments restants.
Skip count
Composants
- count
Obligatoire. Valeur ou expression qui prend la valeur du nombre d'éléments de la séquence à ignorer.
Notes
La clause Skip force une requête à ignorer des éléments au début d'une liste de résultats et de retourner les éléments restants. Le nombre d'éléments à ignorer est identifié par le paramètre count.
Vous pouvez utiliser la clause Skip avec la clause Take pour retourner une plage de données de n'importe quel segment d'une requête. Pour ce faire, passez l'index du premier élément de la plage à la clause Skip et la taille de la plage à la clause Take.
Lorsque vous utilisez la clause Skip dans une requête, vous devez également vous assurer que les résultats sont retournés dans un ordre permettant à la clause Skip d'ignorer les résultats concernés. Pour plus d'informations sur la façon de commander des résultats de requête, consultez Order By, clause (Visual Basic).
Vous pouvez utiliser la clause SkipWhile pour spécifier que seuls certains éléments doivent être ignorés, selon une condition fournie.
Exemple
L'exemple de code suivant associe la clause Skip à la clause Take pour retourner les données d'une requête dans des pages. La fonction GetCustomers utilise la clause Skip pour ignorer les clients dans la liste jusqu'à la valeur d'index de départ fournie et utilise la clause Take pour retourner une page de clients qui débute à partir de cette valeur d'index.
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
Voir aussi
Référence
Order By, clause (Visual Basic)
Skip While, clause (Visual Basic)
Concepts
Introduction à LINQ dans Visual Basic