Предложение Take While (Visual Basic)

Включает элементы в коллекцию, если заданное условие имеет значение true, и пропускает остальные элементы.

Синтаксис

Take While expression  

Компоненты

Термин Определение
expression Обязательный. Выражение, представляющее условие для проверки элементов. Выражение должно возвращать Boolean значение или функциональный эквивалент, например Integer вычисляемый как .Boolean

Remarks

Предложение Take While включает элементы с начала результата запроса до указанного возвращаемого expression значения false. expression После возврата falseзапрос обойдет все оставшиеся элементы. Значение expression игнорируется для оставшихся результатов.

Предложение Take While отличается от предложения в Where том, что предложение Where можно использовать для включения всех элементов из запроса, удовлетворяющего конкретному условию. Предложение Take While включает элементы только при первом выполнении условия. Предложение Take While наиболее полезно при работе с упорядоченным результатом запроса.

Пример

В следующем примере кода предложение используется Take While для получения результатов до тех пор, пока первый клиент не будет найден без заказов.

Public Sub TakeWhileSample()
    Dim customers = GetCustomerList()

    ' Return customers until the first customer with no orders is found.
    Dim customersWithOrders = From cust In customers
                              Order By cust.Orders.Count Descending
                              Take While HasOrders(cust)

    For Each cust In customersWithOrders
        Console.WriteLine(cust.CompanyName & " (" & cust.Orders.Length & ")")
    Next
End Sub

Public Function HasOrders(ByVal cust As Customer) As Boolean
    If cust.Orders.Length > 0 Then Return True

    Return False
End Function

См. также раздел