两种遍历 foreach (DataRow dr in dt.Rows) { StuInfos stu = new StuInfos(); stu.ID = new Guid(dr[0].ToString()); stu.StuName = dr[1].ToString(); stu.Gender = dr[2].ToString(); stu.Age = Convert.ToInt32(dr[3]); stulist.Add(stu); }for (int i = 0; i < dt.Rows.Count; i++) { StuInfos stu = new StuInfos(); stu.ID = new Guid(dt.Rows[i][0].ToString()); stu.StuName = dt.Rows[i][1].ToString(); stu.Gender = dt.Rows[i][2].ToString(); stu.Age = Convert.ToInt32(dt.Rows[i][3]); stulist.Add(stu); }
DataTable dt = new DataTable(); string p=""; for (int i = 0; i < dt.Rows.Count; i++) { for (int k = 0; k < dt.Columns.Count; k++) { p += dt.Rows[i][k].ToString() + "-"; } p = p + "\n"; } MessageBox.Show(p);
应该是你的索引错了,bjlbbm 是列名不是FieldName
这只能说明你还不懂DataTable! DataTable下面后很多属性!其中一个是Rows(当前数据表是行数) DataTable:数据表 数据是一行一行的! 每一行的数据类型就是DataRow(数据行) 数据行里面又有很多列,取值的时候根据下标、名字去取值! id name sex 1 li 男 DataRow[0]=DataRow["id"]遍历的时候最好用foreach用名字去找 foreach(DataRow dr in dt.Rows) { string id= dr["id"].tostring(); …… }
{
var value1 = Convert.ToString(row["bjlbbm"]);
var value2 = Convert.ToString(row["bjlbmc"]);
Response.Write("<p>" + value1 + "-" + value2 + "</p><br/>");
}
更新下 最近vb.net 代码写多了应该是
foreach (DataRow row in dt.Rows)
{
Response.Write(row["bjlbbm"].ToString()+"-");
Response.Write(row["bjlbmc"].ToString());
}
foreach (DataRow dr in dt.Rows)
{
StuInfos stu = new StuInfos();
stu.ID = new Guid(dr[0].ToString());
stu.StuName = dr[1].ToString();
stu.Gender = dr[2].ToString();
stu.Age = Convert.ToInt32(dr[3]);
stulist.Add(stu);
}for (int i = 0; i < dt.Rows.Count; i++)
{
StuInfos stu = new StuInfos();
stu.ID = new Guid(dt.Rows[i][0].ToString());
stu.StuName = dt.Rows[i][1].ToString();
stu.Gender = dt.Rows[i][2].ToString();
stu.Age = Convert.ToInt32(dt.Rows[i][3]);
stulist.Add(stu);
}
string p="";
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int k = 0; k < dt.Columns.Count; k++)
{
p += dt.Rows[i][k].ToString() + "-";
}
p = p + "\n";
}
MessageBox.Show(p);
DataTable下面后很多属性!其中一个是Rows(当前数据表是行数)
DataTable:数据表
数据是一行一行的!
每一行的数据类型就是DataRow(数据行)
数据行里面又有很多列,取值的时候根据下标、名字去取值!
id name sex
1 li 男
DataRow[0]=DataRow["id"]遍历的时候最好用foreach用名字去找
foreach(DataRow dr in dt.Rows)
{
string id= dr["id"].tostring();
……
}