0
_CheckPayees = ds.Tables("Payees")
_CheckPayees是一个DataTable变量。用上面的代码设置后,我想通过它并从中删除重复的行。尽管这些行必须完全相同,但如果两列具有匹配的值,但另一列不匹配,那么这不被视为一个愚蠢的行为。从DataTable中删除重复行
有没有简单的方法来做到这一点?
_CheckPayees = ds.Tables("Payees")
_CheckPayees是一个DataTable变量。用上面的代码设置后,我想通过它并从中删除重复的行。尽管这些行必须完全相同,但如果两列具有匹配的值,但另一列不匹配,那么这不被视为一个愚蠢的行为。从DataTable中删除重复行
有没有简单的方法来做到这一点?
没关系....这个工程。
我讨厌回答我自己的问题,但...我想它我被困在某些东西一段时间,然后找到它,这还没有答案,我会发布我的,因为其他人可能需要它。
Private Function EliminateDuplicates(ByVal dt As DataTable) As DataTable
Dim ssort As String = ""
Dim col As DataColumn
Dim scol As DataColumn
For Each scol In dt.Columns
If ssort <> "" Then ssort &= ","
ssort &= scol.ColumnName
Next
dt.DefaultView.Sort = ssort
Dim i As Integer, bEquals As Boolean, c As Integer, ccount As Integer
ccount = dt.Columns.Count
For i = dt.Rows.Count - 1 To 1 Step -1
bEquals = True
For c = 0 To ccount - 1
If dt.DefaultView(i)(c).ToString() <> dt.DefaultView(i - 1)(c).ToString() Then
bEquals = False
Exit For
End If
Next c
If bEquals Then
dt.DefaultView(i).Delete()
End If
Next
Return dt
End Function