我试图区分多个列并从datatable获取数据行.但得到错误.
Dim query As IEnumerable(Of DataRow) =
(From row As DataRow In SourceTable.AsEnumerable() _
Select row.Field(Of String)("ColumnName1"),
row.Field(Of String)("ColumnName2") ).Distinct()
Run Code Online (Sandbox Code Playgroud)
低于错误:
Unable to cast object of type '<DistinctIterator>d__7a`1[System.String]'
to type 'System.Collections.Generic.IEnumerable`1[System.Data.DataRow]'.
Run Code Online (Sandbox Code Playgroud)
我想要另一个基于SourceTable给定列的不同行的数据表.
我有以下数据 - 让我们说MyTable:
Col1: Col2: Col3: Col4:
1 abc def <null>
2 abc def ghi
1 abc def <null>
3 abc def <null>
1 abc def <null>
Run Code Online (Sandbox Code Playgroud)
而我正试图获得不同的行:
Col1: Col2: Col3: Col4:
1 abc def <null>
2 abc def ghi
3 abc def <null>
Run Code Online (Sandbox Code Playgroud)
我尝试了以下LINQ语句:
MyTable = (From dr As DataRow In MyTable Select dr).Distinct.CopyToDataTable
Run Code Online (Sandbox Code Playgroud)
但它将原始数据表返回给我重复的行.
我做错了什么以及如何获得我想要的输出?