使用datareader返回一行数据,然后再把此行数增加到一个datagridview中?
谢谢啦

解决方案 »

  1.   

    不明白你为啥用datareader,你直接返回 datatable,
    和你绑定datagridview的datatable merge一下,再绑定不就完了嘛
      

  2.   

    datatable my=new datatable();
    if(datareader.reader())
    {
       my.rows.add(datareader);//如果读取了一行,就加一行,,问题是你读取的所有行必须结构一致才得
    }
    datagridview.datasource=my;
      

  3.   

    如果说一个人他写了一个循环语句来一行一行处理数据,而不会处理第一行,这就无语了啊。这只能找人手把手去教。而csdn不应该沦为教这样的代码的论坛的。
      

  4.   

    有时候只需要读取一行,不过即使如此,也可以用datatable,在select语句中限制只查出一行,
      

  5.   

    where(datareader.reader())
    {
      datagridview.datasource.add(datareader);
       break;
    }
      

  6.   

     MyCon.Open();
                    OdbcCommand myCom = new OdbcCommand(strsql);
                    myCom.Connection = MyCon;
                    DataSet ds = new DataSet();
                    OdbcDataAdapter da = new OdbcDataAdapter(strsql, MyCon);
                    da.Fill(ds);
                    dataGridView1.AutoGenerateColumns = false;
                    IEnumerator MyEnum =    ds.Tables[0].DefaultView.Table.Rows.GetEnumerator();
                    while (MyEnum.MoveNext())
                    {
                        dataGridView1.Rows.Add((DataRow) MyEnum.Current);
                    }
    我是这样写的,不行