Skip to main content

LINQ To DataSet Samples - Custom Sequence Operators

On This Page


Combine

This sample uses a user-created sequence operator, Combine, to calculate the dot product of two vectors.

Public Sub DataSetLinq98()

    Dim numbersA As IEnumerable(Of DataRow) = TestDS.Tables("NumbersA").AsEnumerable()
    Dim numbersB As IEnumerable(Of DataRow) = TestDS.Tables("NumbersB").AsEnumerable()

    Dim dotProduct = numbersA.Combine(numbersB, _
                                      Function(a, b) a.Field(Of Integer)("number") _
                                                   * b.Field(Of Integer)("number")).Sum()
    Console.WriteLine("Dot product: {0}", dotProduct)
End Sub


Result:
Dot product: 109