Opérations de quantificateur dans LINQ

Ces opérateurs renvoient une valeur booléenne, c'est-à-dire True ou False lorsque certains ou tous les éléments d'une séquence satisfont à une condition spécifique.

Opérateur La description Syntaxe de l'expression de requête C # Syntaxe d'expression de requête VB
Tout Renvoie une valeur 'True' si tous les éléments d'une séquence satisfont à une condition de prédicat N'est pas applicable Agréger… dans… dans tout (…)
Tout Détermine en recherchant une séquence que si un élément de la même chose satisfait à une condition spécifiée N'est pas applicable Agréger… dans… en n'importe quel ()
Contient Renvoie une valeur 'True' si trouve qu'un élément spécifique est présent dans une séquence si la séquence ne contient pas cet élément spécifique, la valeur 'false' est renvoyée N'est pas applicable N'est pas applicable

Exemple de méthode d'extension All - All (Of TSource)

VB

Module Module1

   Sub Main()

      Dim barley As New Pet With {.Name = "Barley", .Age = 4}
      Dim boots As New Pet With {.Name = "Boots", .Age = 1}
      Dim whiskers As New Pet With {.Name = "Whiskers", .Age = 6}
      Dim bluemoon As New Pet With {.Name = "Blue Moon", .Age = 9}
      Dim daisy As New Pet With {.Name = "Daisy", .Age = 3}

      Dim charlotte As New Person With {.Name = "Charlotte", .Pets = New Pet() {barley, boots}}
      Dim arlene As New Person With {.Name = "Arlene", .Pets = New Pet() {whiskers}}
      Dim rui As New Person With {.Name = "Rui", .Pets = New Pet() {bluemoon, daisy}}

      Dim people As New System.Collections.Generic.List(Of Person)(New Person() {charlotte, arlene, rui})

      Dim query = From pers In people
                  Where (Aggregate pt In pers.Pets Into All(pt.Age > 2))
                  Select pers.Name

      For Each e In query
         Console.WriteLine("Name = {0}", e)
      Next

      Console.WriteLine(vbLf & "Press any key to continue.")
      Console.ReadKey()
	  
   End Sub

   Class Person
      Public Property Name As String
      Public Property Pets As Pet()
   End Class

   Class Pet
      Public Property Name As String
      Public Property Age As Integer
   End Class
   
End Module

Lorsque le code ci-dessus dans VB est compilé et exécuté, il produit le résultat suivant -

Arlene 
Rui 

Press any key to continue.

Exemple de Any - Méthode d'extension

VB

Module Module1

   Sub Main()

      Dim barley As New Pet With {.Name = "Barley", .Age = 4}
      Dim boots As New Pet With {.Name = "Boots", .Age = 1}
      Dim whiskers As New Pet With {.Name = "Whiskers", .Age = 6}
      Dim bluemoon As New Pet With {.Name = "Blue Moon", .Age = 9}
      Dim daisy As New Pet With {.Name = "Daisy", .Age = 3}

      Dim charlotte As New Person With {.Name = "Charlotte", .Pets = New Pet() {barley, boots}}
      Dim arlene As New Person With {.Name = "Arlene", .Pets = New Pet() {whiskers}}
      Dim rui As New Person With {.Name = "Rui", .Pets = New Pet() {bluemoon, daisy}}

      Dim people As New System.Collections.Generic.List(Of Person)(New Person() {charlotte, arlene, rui})

      Dim query = From pers In people
                  Where (Aggregate pt In pers.Pets Into Any(pt.Age > 7))
                  Select pers.Name

      For Each e In query
         Console.WriteLine("Name = {0}", e)
      Next

      Console.WriteLine(vbLf & "Press any key to continue.")
      Console.ReadKey()
	  
   End Sub

   Class Person
      Public Property Name As String
      Public Property Pets As Pet()
   End Class

   Class Pet
      Public Property Name As String
      Public Property Age As Integer
   End Class
   
End Module

Lorsque le code ci-dessus dans VB est compilé et exécuté, il produit le résultat suivant -

Rui

Press any key to continue.