只要指定条件是 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