Cláusula Take While (Visual Basic)

Inclui elementos em uma coleção, contanto que a condição especificada seja true, e ignora os elementos restantes.

Sintaxe

Take While expression  

Partes

Termo Definição
expression Obrigatórios. Uma expressão que representa uma condição para a qual testar elementos. A expressão deve retornar um valor Boolean ou um equivalente funcional, como um Integer para ser avaliado como um Boolean.

Comentários

A cláusula Take While inclui elementos do início de um resultado de consulta até que o expression fornecido retorne false. Após expression retornar false, a consulta ignorará todos os elementos restantes. O expression é ignorado para os resultados restantes.

A cláusula Take While difere da Where porque a Where pode ser usada para incluir todos os elementos de uma consulta que atendam a uma condição específica. A cláusula Take While inclui elementos somente até a primeira vez em que a condição não é atendida. A cláusula Take While é mais útil quando você está trabalhando com um resultado de consulta ordenado.

Exemplo

O exemplo de código a seguir usa a cláusula Take While para recuperar resultados até que o primeiro cliente sem nenhum pedido seja encontrado.

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

Confira também