Skip to main content

LINQ To DataSet Samples - DataSet Custom Operators


ToDataTable - Load existing DataTable

Load an existing table from a sequence.

Public Sub DataSetLinq105()
    Dim customers = TestDS.Tables("Customers").AsEnumerable()
    Dim orders = TestDS.Tables("Orders").AsEnumerable()

    Dim myOrders = New DataTable("MyOrders")

    myOrders.Columns.Add("CustomerID", GetType(String))
    myOrders.Columns.Add("OrderID", GetType(Integer))
    myOrders.Columns.Add("Total", GetType(Decimal))

    Dim smallOrders = From c In customers, o In orders _
        Where c!CustomerID = o!CustomerID And _
        o!Total < 500 _
        Select c!CustomerID, o!OrderID, o!Total Take 10

    For Each result In smallOrders
        myOrders.Rows.Add(New Object() {result.CustomerID, result.OrderID, result.Total})
    Next

    PrettyPrintDataTable(myOrders)

End Sub


Result:
Table: MyOrders
CustomerID = ALFKI OrderID = 10702 Total = 330.00
CustomerID = ALFKI OrderID = 10952 Total = 471.20
CustomerID = ANATR OrderID = 10308 Total = 88.80
CustomerID = ANATR OrderID = 10625 Total = 479.75
CustomerID = ANATR OrderID = 10759 Total = 320.00
CustomerID = ANTON OrderID = 10365 Total = 403.20
CustomerID = ANTON OrderID = 10682 Total = 375.50
CustomerID = AROUT OrderID = 10355 Total = 480.00
CustomerID = AROUT OrderID = 10453 Total = 407.70
CustomerID = AROUT OrderID = 10741 Total = 228.00