Take While – klauzule (Visual Basic)
Zahrnuje prvky v kolekci, pokud je zadaná podmínka true
a obchází zbývající prvky.
Syntaxe
Take While expression
Součástky
Pojem | definice |
---|---|
expression |
Povinný: Výraz, který představuje podmínku pro testování prvků. Výraz musí vrátit Boolean hodnotu nebo funkční ekvivalent, například hodnotu, která Integer má být vyhodnocena jako .Boolean |
Poznámky
Klauzule Take While
obsahuje elementy od začátku výsledku dotazu, dokud zadaný expression
výsledek nevrátí false
. expression
Po vrácení false
dotaz vynechá všechny zbývající prvky. Zbývající expression
výsledky se ignorují.
Klauzule Take While
se liší od Where
klauzule v tom, že Where
klauzule lze použít k zahrnutí všech prvků z dotazu, který splňuje určitou podmínku. Klauzule Take While
obsahuje prvky pouze do prvního okamžiku, kdy podmínka není splněna. Klauzule Take While
je nejužitečnější při práci s seřazeným výsledkem dotazu.
Příklad
Následující příklad kódu používá klauzuli Take While
k načtení výsledků, dokud se nenajde první zákazník bez jakýchkoli objednávek.
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