Take While — Klauzula (Visual Basic)

Zawiera elementy w kolekcji, o ile określony warunek jest true i pomija pozostałe elementy.

Składnia

Take While expression  

generatora

Termin Definicja
expression Wymagany. Wyrażenie reprezentujące warunek do testowania elementów. Wyrażenie musi zwracać Boolean wartość lub odpowiednik funkcjonalny, taki jak , Integer który ma być obliczany Booleanjako .

Uwagi

Klauzula Take While zawiera elementy od początku wyniku zapytania, dopóki podany expression element nie zwróci falsewartości . Po powrocie expressionfalsezapytanie będzie pomijać wszystkie pozostałe elementy. Parametr expression jest ignorowany dla pozostałych wyników.

Klauzula Take While różni się od Where klauzuli w tym, że klauzula Where może służyć do uwzględnienia wszystkich elementów z zapytania spełniającego określony warunek. Klauzula Take While zawiera elementy tylko do momentu, gdy warunek nie zostanie spełniony. Klauzula Take While jest najbardziej przydatna podczas pracy z uporządkowanym wynikiem zapytania.

Przykład

Poniższy przykład kodu używa klauzuli , Take While aby pobrać wyniki do momentu znalezienia pierwszego klienta bez żadnych zamówień.

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

Zobacz też