数据源不支持服务器端的数据分页 这是什么错误
源码:
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();
}
显示的错误是: 数据源不支持服务器端的数据分页
------解决方案--------------------用dataset做数据源,要不就别分页
------解决方案--------------------如果用datareader分页也可以,自己写sql语句来取记录
------解决方案--------------------很明显用DataReader + 高效率SQL语句 好!
------解决方案--------------------DataSet才可以
你这个还有个问题
SqlDataReader= ExecPro.ExecPro.ExecuteReader(StrConn, CommandType.StoredProcedure, "ShowBookAppraise", parms); showBookappraise.DataSource=dr;
showBookappraise.DataBind();
dr.close()
DataReader使用完后要关闭
------解决方案--------------------ExecuteReader不支持分页,
请用ExecuteDataSet