LINQ To DataSet Samples - QuantifiersOn This Page |
This sample uses Any to determine if any of the words in the array contain the substring 'ei'.
Public Sub DataSetLinq67()
Dim words2 = TestDS.Tables("Words2").AsEnumerable()
Dim iAfterE = words2.Any(Function(w) w.Field(Of String)("word").Contains("ei"))
Console.WriteLine("There is a word that contains in the list that contains 'ei': {0}", iAfterE)
End Sub
Result:
There is a word that contains in the list that contains 'ei': False
This sample uses Any to return a grouped a list of products only for categories that have at least one product that is out of stock.
Public Sub DataSetLinq69()
Dim products = TestDS.Tables("Products").AsEnumerable()
Dim productGroups = From p In products _
Group p By Key = p("Category") Into Group _
Where Group.Any(Function(p) p("UnitsInStock") = 0) _
Select Category = Key, ProductGroup = Group
For Each pg In productGroups
Console.WriteLine(pg.Category)
For Each p In pg.ProductGroup
Console.WriteLine(vbTab & p("ProductName"))
Next
Next
End Sub
Result:
Condiments
Aniseed Syrup
Chef Anton's Cajun Seasoning
Chef Anton's Gumbo Mix
Grandma's Boysenberry Spread
Northwoods Cranberry Sauce
Genen Shouyu
Gula Malacca
Sirop d'érable
Vegie-spread
Louisiana Fiery Hot Pepper Sauce
Louisiana Hot Spiced Okra
Original Frankfurter grüne Soße
Meat/Poultry
Mishi Kobe Niku
Alice Mutton
Thüringer Rostbratwurst
Perth Pasties
Tourtière
Pâté chinois
Dairy Products
Queso Cabrales
Queso Manchego La Pastora
Gorgonzola Telino
Mascarpone Fabioli
Geitost
Raclette Courdavault
Camembert Pierrot
Gudbrandsdalsost
Flotemysost
Mozzarella di Giovanni
This sample uses All to determine whether an array contains only odd numbers.
Public Sub DataSetLinq70()
Dim numbers = TestDS.Tables("Numbers").AsEnumerable()
Dim onlyOdd = numbers.All(Function(n) n("number") Mod 2 = 1)
Console.WriteLine("The list contains only odd numbers: {0}", onlyOdd)
End Sub
Result:
The list contains only odd numbers: False
This sample uses All to return a grouped a list of products only for categories that have all of their products in stock.
Public Sub DataSetLinq72()
Dim products = TestDS.Tables("Products").AsEnumerable()
Dim productGroups = From p In products _
Group p By Key = p("Category") Into Group _
Where Group.All(Function(p) p("UnitsInStock") > 0) _
Select Category = Key, ProductGroup = Group
For Each pg In productGroups
Console.WriteLine(pg.Category)
For Each p In pg.ProductGroup
Console.WriteLine(vbTab & p("ProductName"))
Next
Next
End Sub
Result:
Beverages
Chai
Chang
Guaraná Fantástica
Sasquatch Ale
Steeleye Stout
Côte de Blaye
Chartreuse verte
Ipoh Coffee
Laughing Lumberjack Lager
Outback Lager
Rhönbräu Klosterbier
Lakkalikööri
Produce
Uncle Bob's Organic Dried Pears
Tofu
Rössle Sauerkraut
Manjimup Dried Apples
Longlife Tofu
Seafood
Ikura
Konbu
Carnarvon Tigers
Nord-Ost Matjeshering
Inlagd Sill
Gravad lax
Boston Crab Meat
Jack's New England Clam Chowder
Rogede sild
Spegesild
Escargots de Bourgogne
Röd Kaviar
Confections
Pavlova
Teatime Chocolate Biscuits
Sir Rodney's Marmalade
Sir Rodney's Scones
NuNuCa Nuß-Nougat-Creme
Gumbär Gummibärchen
Schoggi Schokolade
Zaanse koeken
Chocolade
Maxilaku
Valkoinen suklaa
Tarte au sucre
Scottish Longbreads
Grains/Cereals
Gustaf's Knäckebröd
Tunnbröd
Singaporean Hokkien Fried Mee
Filo Mix
Gnocchi di nonna Alice
Ravioli Angelo
Wimmers gute Semmelknödel
Public Sub DataSetLinq102()
Dim numbers = TestDS.Tables("Numbers")
'Find DataRow with number == 3
Dim rowToFind As DataRow = Nothing
For Each r As DataRow In numbers.Rows
If r("number") = 3 Then
rowToFind = r
Exit For
End If
Next
Dim foundRow = numbers.AsEnumerable().Contains(rowToFind)
Console.WriteLine("Found Row: {0}", foundRow)
End Sub
Result:
Found Row: True