如何比较DataTable中行的值?

时间:2015-07-06 08:12:04

标签: vb.net visual-studio-2012 datatable

我想比较行名称的值来确定计数(相同的值) 我尝试过两种方法,但它们与值计数不匹配:

1)

dataSet.Rows(i).ItemArray(0).ToString().Equals(dataSet.Rows(j).ItemArray(0).ToString())

2)。

dataSet.Rows(i).ItemArray(0).ToString()= dataSet.Rows(j).ItemArray(0).ToString()

完整代码:

Dim count As Integer
count = 0
For i As Integer = 0 To dataSet.Rows.Count - 1
    Dim r As DataRow = dtCloned.NewRow
    r(0) = dataSet.Rows(i).ItemArray(0).ToString()
    For j As Integer = 0 To dataSet.Rows.Count - 1
        If dataSet.Rows(i).ItemArray(0).ToString().Equals(dataSet.Rows(j).ItemArray(0).ToString()) Then
            count = count + 1
        End If
        r(1) = count
    Next
    dtCloned.Rows.Add(r)
Next

3 个答案:

答案 0 :(得分:1)

我想要这样。 我将包含所有数据的数据存储到数据集(dataTable)。我想进入dtClone(名称列和计数列),具有序列且没有重复项(名称列)的数据并填充计数列(在名称列中包含相同的位数)。

答案 1 :(得分:0)

使用此代码轻松比较两行:

    Dim comparer As IEqualityComparer(Of DataRow) = DataRowComparer.Default
    Dim RowEqual = comparer.Equals(ShowRow, OldRow)

    If (RowEqual = True) Then
         NavMessage = "Two rows are equal"
    Else
         NavMessage = "Two rows are not equal"
    End If

答案 2 :(得分:-1)

使用每个循环比较两个数据表值