Take While 子句 (Visual Basic)
一直包含集合中的項目,直到指定的條件不為 true,然後略過剩餘項目。
Take While expression
組件
詞彙 |
定義 |
expression |
必要項。 運算式,表示要對項目測試的條件。 這個運算式必須傳回 Boolean 值或功能上的對等用法,例如待評估為 Boolean 的 Integer。 |
備註
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