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