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

另请参阅