Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Pomija określoną liczbę elementów w kolekcji, a następnie zwraca pozostałe elementy.
Składnia
Skip count
Części
count
To jest wymagane. Wartość lub wyrażenie, które oblicza liczbę elementów sekwencji do pominięcia.
Uwagi
Klauzula Skip powoduje, że zapytanie pomija elementy na początku listy wyników i zwraca pozostałe elementy. Liczba elementów do pominięcia jest identyfikowana przez count parametr .
Możesz użyć klauzuli Skip z klauzulą , Take aby zwrócić zakres danych z dowolnego segmentu zapytania. W tym celu przekaż indeks pierwszego elementu zakresu do Skip klauzuli i rozmiar zakresu do klauzuli Take .
W przypadku użycia klauzuli Skip w zapytaniu może być również konieczne upewnienie się, że wyniki zostaną zwrócone w kolejności, która umożliwi klauzuli Skip obejście zamierzonych wyników. Aby uzyskać więcej informacji na temat porządkowania wyników zapytania, zobacz Klauzula Order By.
Można użyć klauzuli SkipWhile , aby określić, że tylko niektóre elementy są ignorowane, w zależności od podanego warunku.
Przykład
Poniższy przykład kodu używa klauzuli Skip wraz z Take klauzulą , aby zwracać dane z zapytania na stronach. Funkcja GetCustomers używa Skip klauzuli , aby pominąć klientów na liście do momentu podanej wartości indeksu początkowego i używa Take klauzuli , aby zwrócić stronę klientów rozpoczynających się od tej wartości indeksu.
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