源码:
 protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        { ShowBookAppraise();
        }
    }
 private void ShowBookAppraise()
        
            {
                string Bookid;
                Bookid = Request.QueryString["BookId"].ToString();
                string StrConn = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
                SqlParameter[] parms = new SqlParameter[1];                parms[0] = new SqlParameter("@BookId",SqlDbType.VarChar,50);
                parms[0].Direction = ParameterDirection.Input;
                parms[0].Value=Bookid;
                                showBookappraise.DataSource=ExecPro.ExecPro.ExecuteReader(StrConn, CommandType.StoredProcedure, "ShowBookAppraise", parms);
                showBookappraise.DataBind();
  
        
            }
显示的错误是: 数据源不支持服务器端的数据分页

解决方案 »

  1.   

    用dataset做数据源,要不就别分页
      

  2.   

    如果用datareader分页也可以,自己写sql语句来取记录
      

  3.   

    很明显用DataReader + 高效率SQL语句 好!
      

  4.   

    DataSet才可以你这个还有个问题 
          SqlDataReader=         ExecPro.ExecPro.ExecuteReader(StrConn, CommandType.StoredProcedure, "ShowBookAppraise", parms); showBookappraise.DataSource=dr;
                    showBookappraise.DataBind(); 
    dr.close()
    DataReader使用完后要关闭
      

  5.   

    ExecuteReader不支持分页,
    请用ExecuteDataSet