Clausola Skip (Visual Basic)
Ignora un numero specificato di elementi in un insieme e quindi restituisce gli elementi rimanenti.
Skip count
Parti
- count
Obbligatorio. Valore o espressione che restituisce il numero di elementi della sequenza da ignorare.
Note
La clausola Skip fa in modo che una query ignori gli elementi all'inizio di un elenco di risultati e restituisca gli elementi rimanenti. Il numero di elementi da ignorare viene specificato dal parametro count.
È possibile utilizzare la clausola Skip con la clausola Take per restituire un intervallo di dati da qualsiasi segmento di una query. A tale scopo, passare l'indice del primo elemento dell'intervallo alla clausola Skip e la dimensione dell'intervallo alla clausola Take.
Quando si utilizza la clausola Skip in una query, è necessario assicurarsi che i risultati vengano restituiti in un ordine che consente alla clausola Skip di ignorare i risultati desiderati. Per ulteriori informazioni sull'ordinamento dei risultati di una query, vedere Clausola Order By (Visual Basic).
È possibile utilizzare la clausola SkipWhile per specificare che vengano ignorati solo determinati elementi, in funzione di una condizione fornita.
Esempio
Nell'esempio di codice seguente viene utilizzata insieme la clausola Skip con la clausola Take per restituire dati da una query in pagine. La funzione GetCustomers utilizza la clausola Skip per ignorare i clienti nell'elenco fino al valore di indice iniziale fornito e utilizza la clausola Take per restituire una pagina di clienti a partire da quel valore di indice.
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
Vedere anche
Riferimenti
Clausola Select (Visual Basic)
Clausola Order By (Visual Basic)
Clausola Skip While (Visual Basic)
Concetti
Introduzione a LINQ in Visual Basic