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

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

Синтаксис

Take While expression  

Детали

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

Замечания

Предложение 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

См. также