Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Проходит указанное количество элементов в коллекции, а затем возвращает оставшиеся элементы.
Синтаксис
Skip count
Комплектующие
count
Обязательное. Значение или выражение, которое оценивает количество элементов последовательности, которые необходимо пропустить.
Замечания
Предложение Skip вызывает обход элементов в начале списка результатов и возвращает остальные элементы. Число пропущенных элементов определяется параметром count .
Предложение можно использовать Skip с Take предложением для возврата диапазона данных из любого сегмента запроса. Для этого передайте индекс первого элемента диапазона Skip предложению и размер диапазона предложению Take .
При использовании Skip предложения в запросе также может потребоваться убедиться, что результаты возвращаются в порядке, который позволит Skip предложению обойти предполагаемые результаты. Дополнительные сведения о заказе результатов запроса см. в предложении Order By.
Предложение можно использовать SkipWhile для указания того, что в зависимости от указанного условия игнорируются только определенные элементы.
Пример
В следующем примере кода предложение используется Skip вместе с Take предложением для возврата данных из запроса на страницах. Функция GetCustomers использует Skip предложение для обхода клиентов в списке до указанного начального значения индекса и использует Take предложение для возврата страницы клиентов, начиная с этого значения индекса.
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