C#|遍历DataTable中的数据行
前言
在C#中的Datatable数据变量的操作过程中,有时候我们需要遍历DataTable变量获取每一行的数据值,例如将DataTable变量转换为List集合的时候,我们就会遍历DataTable变量,遍历DataTable变量获取到每一行的DataRow对象,通过DataRow对象我们可以获取到对应该行的所有列的属性值等等。
首先给定示例的DataTable类型变量dataDt,该数据表中含有2个数据列,一个为字符串类型的Name列,一个为整数类型Int的Id列。定义如下:
DataTable dataDt = new DataTable();
dataDt.Columns.Add("Name", Type.GetType("System.String"));//添加Name列,存储数据类型为string
dataDt.Columns.Add("Id", Type.GetType("System.Int32"));//添加Id列,存储数据类型为Int
DataRow newRow = dataDt.NewRow();
newRow["Name"] = "张三";
newRow["Id"] = 11;
代码实现
(1)使用for循环遍历DataTable对象
通过DataTable变量的Rows属性变量的Count属性即可获取到整个DataTable表格的行数,即dataDt.Rows.Count。
int rowCount = dataDt.Rows.Count;
for (int index= 0; index < rowCount; index++)
{
string Name = dataDt.Rows[index]["Name"].ToString();
int Id = Convert.ToInt32(dataDt.Rows[index]["Id"]);
index = index + 1;
}
(2)通过foreach循环DataRow对象来遍历DataTable对象
foreach (DataRow dataRow in dataDt.Rows)
{
string Name = dataRow["Name"].ToString();
int Id = Convert.ToInt32(dataRow["Id"]);
}