for each DataRow row in dt.Rows
{
...
}

解决方案 »

  1.   

    foreach(var row in dt.Rows)
    {
        var value1 = Convert.ToString(row["bjlbbm"]);
        var value2 = Convert.ToString(row["bjlbmc"]);
        Response.Write("<p>" + value1 + "-" + value2 + "</p><br/>");
    }
      

  2.   


    更新下 最近vb.net 代码写多了应该是
    foreach (DataRow row in dt.Rows)
    {
    Response.Write(row["bjlbbm"].ToString()+"-");
      Response.Write(row["bjlbmc"].ToString());
    }
      

  3.   

    您好,我是一个C#初学者,您为什么要用var类型了,用var型该出错的地方还是会出错啊
      

  4.   

    两种遍历
    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);
     }
      

  5.   

    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);
      

  6.   

    应该是你的索引错了,bjlbbm 是列名不是FieldName 
      

  7.   

    这只能说明你还不懂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();
        ……
    }