Skip 句 (Visual Basic)Skip Clause (Visual Basic)

コレクション内の指定された数の要素をバイパスし、残りの要素を返します。Bypasses a specified number of elements in a collection and then returns the remaining elements.


Skip count  


必須。Required. スキップするシーケンスの要素の数に評価される式または値。A value or an expression that evaluates to the number of elements of the sequence to skip.


Skip句によってクエリ結果一覧の先頭の要素をバイパスし、残りの要素を返します。The Skip clause causes a query to bypass elements at the beginning of a results list and return the remaining elements. スキップする要素の数がで識別される、countパラメーター。The number of elements to skip is identified by the count parameter.

使用することができます、Skip句、Take句をクエリの任意のセグメントからのデータの範囲を返します。You can use the Skip clause with the Take clause to return a range of data from any segment of a query. これを行うには、範囲の最初の要素のインデックスを渡す、Skip句とする範囲のサイズ、Take句。To do this, pass the index of the first element of the range to the Skip clause and the size of the range to the Take clause.

使用すると、Skipクエリ句、する必要がありますも結果が可能にする順序で返されるように、Skip意図した結果をバイパスする句。When you use the Skip clause in a query, you may also need to ensure that the results are returned in an order that will enable the Skip clause to bypass the intended results. クエリの結果を順序付けの詳細については、次を参照してください。 Order By 句します。For more information about ordering query results, see Order By Clause.

使用することができます、SkipWhile句を指定した条件に応じて、特定の要素だけを無視するかを指定します。You can use the SkipWhile clause to specify that only certain elements are ignored, depending on a supplied condition.


次のコード例では、Skip句と組み合わせて、Take句をページ内のクエリからデータを返します。The following code example uses the Skip clause together with the Take clause to return data from a query in pages. GetCustomers関数は、Skip値、および使用して、指定された開始インデックスを作成するまで、リスト内の顧客をバイパスする句、Take句にそのインデックス値から開始のページが返されます。The GetCustomers function uses the Skip clause to bypass the customers in the list until the supplied starting index value, and uses the Take clause to return a page of customers starting from that index value.

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)


    pageNumber += 1
    customersPage = GetCustomers(pageNumber * pageSize, pageSize)
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

関連項目See also