Bagikan melalui


Lewati Klausul (Visual Basic)

Melewati jumlah elemen tertentu dalam koleksi lalu mengembalikan elemen yang tersisa.

Sintaksis

Skip count  

Bagian

count
Dibutuhkan. Nilai atau ekspresi yang mengevaluasi ke jumlah elemen urutan yang akan dilewati.

Komentar

Klausa Skip menyebabkan kueri melewati elemen di awal daftar hasil dan mengembalikan elemen yang tersisa. Jumlah elemen yang akan dilewati diidentifikasi oleh count parameter .

Anda dapat menggunakan Skip klausa dengan Take klausul untuk mengembalikan rentang data dari segmen kueri apa pun. Untuk melakukan ini, teruskan indeks elemen pertama rentang ke Skip klausa dan ukuran rentang ke Take klausa.

Saat Anda menggunakan Skip klausul dalam kueri, Anda mungkin juga perlu memastikan bahwa hasilnya dikembalikan dalam urutan yang akan memungkinkan Skip klausul untuk melewati hasil yang dimaksudkan. Untuk informasi selengkapnya tentang mengurutkan hasil kueri, lihat Urutan Menurut Klausul.

Anda dapat menggunakan SkipWhile klausul untuk menentukan bahwa hanya elemen tertentu yang diabaikan, tergantung pada kondisi yang disediakan.

Contoh

Contoh kode berikut menggunakan klausa bersama dengan Take klausul Skip untuk mengembalikan data dari kueri di halaman. Fungsi ini GetCustomers menggunakan klausul Skip untuk melewati pelanggan dalam daftar hingga nilai indeks awal yang disediakan, dan menggunakan klausul untuk mengembalikan halaman pelanggan mulai dari nilai indeks tersebut 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

Lihat juga