如何迭代DataTable中给定行中的所有项目

时间:2013-03-07 09:03:16

标签: asp.net vb.net datatable

如何迭代items中给定行中的所有DataTable。我有以下代码来迭代所有行,我想要另一个For循环迭代给定行中的所有单元格?

For Each row As DataRow In dt.Rows

Next row

我可以访问每一行,但我想访问该行的每一列,因为我不知道列的名称和数量,..

4 个答案:

答案 0 :(得分:14)

你必须循环DataRow.ItemArray。在C#中,我们可以通过以下代码来完成:

 foreach (DataRow dr in dt.Rows)
   {
     foreach (var item in dr.ItemArray)
       {
                Console.WriteLine(item);
       }
   }

这相当于以下VB.NET代码。

For Each dr As DataRow In dt.Rows
    For Each item In dr.ItemArray
        Console.WriteLine(item)
    Next
Next

答案 1 :(得分:3)

For Each row As DataRow In dt.Rows
    For Each column As DataColumn in dt.Columns
        Console.WriteLine(row(column))
    Next column
Next row

答案 2 :(得分:-1)

你的代码是正确的。 你可以使用这段代码......

Dim tbl As New DataTable()
Dim datarow As DataRow

tbl.Columns.Add("column1")

datarow = tbl.NewRow()
datarow("column1") = "Data1"

tbl.Rows.Add(datarow)
For Each dr As DataRow In tbl.Rows
    For Each value In dr.ItemArray
       Label1.Text = value.ToString()
    Next
Next

答案 3 :(得分:-1)

您也可以use DataRow.ItemArray完成这项工作

代码看起来像这样

For Each item As var In Row.ItemArray
    //do something
Next