代码好像没问题,你确定你的select * from t_user多一条?
或者看一下GridView的pagesize看一下

解决方案 »

  1.   

    怎么能这样写呢? 直接DataTable绑定阿,没见过用DataReader绑定的!
      

  2.   

    把 if (Dr.Read()) { 这个判断去掉。
      

  3.   

            SqlConnection Conn = DBClass.setConn();
            string sql = "select * from t_user";
            SqlCommand sCmd = new SqlCommand(sql, Conn);
            Conn.Open();
            SqlDataReader Dr = sCmd.ExecuteReader();
            if(Dr.HasRow())
            {
                while (Dr.Read()) {            //DDL1.Items.Clear();
                //DDL1.DataSource = Dr;
                //DDL1.DataTextField = "username";
                //DDL1.DataValueField = "pwd";
                //DDL1.DataBind();
                
                }
                GridView1.DataSource = Dr;
                GridView1.DataBind();
            }
            else
            {
                //暂无相关记录
            }
            Dr.Dispose();
            Conn.Close();
      

  4.   


    为何不读取到DataSet中,然后在绑定
      

  5.   

    你可以这样试一下
             SqlConnection Conn = DBClass.setConn();
            string sql = "select * from t_user";
            SqlCommand sCmd = new SqlCommand(sql, Conn);
            Conn.Open();
            SqlDataReader Dr = sCmd.ExecuteReader();
            GridView1.DataSource = Dr;
            GridView1.DataBind();
      

  6.   

    直接用 datebale OR dataset 帮定嘛
      

  7.   

    谁说非用dataset
    你这错误吃饱撑的,关机重起
      

  8.   

    读到datatable中设置断点看看是否读出了3条记录
      

  9.   

    我发现了问题的本质:
     if (Dr.Read()) {
                GridView1.DataSource = Dr;
                GridView1.DataBind();
            }
    Read()方法,首先,要知道SqlDataReader是一个向前的只读流,你已经执行了一个Dr.Read(),那么在Dr中就只有两条记录了,你不用这样判断的,直接赋值就可以了,代码改成如下方式:        SqlConnection Conn = DBClass.setConn();
            string sql = "select * from t_user";
            SqlCommand sCmd = new SqlCommand(sql, Conn);
            Conn.Open();
            SqlDataReader Dr = sCmd.ExecuteReader();
            GridView1.DataSource = Dr;
            GridView1.DataBind();
      

  10.   

    1、先可以确定一点的是可以使用SqlDataReader绑定到GridView中的
    2、第6楼的方式数据绑定后一条记录也没有了
    3、其他人的方式用While的方式的,绑定后,顶多是剩下一条数据,大家都测试测试吧
      

  11.   

    我们老师说过不准有SqlDataReader;我来顶下
      

  12.   


    不会吧
    SqlDataReader 这个有时候用的也多吧。
    为何不准用?
    这个也有他的优点,到网上找找资料吧