在一个页面中
有a~z个可按音序查询的 <a href=search.aspx?letter=a> </a>
同时 在该页(search.aspx)还有一个按钮
按不同的条件查询 入关键字、类别等
两种查询都将结果绑定在datagrid中
当datagrid分页时就会出现问题
只要Request.QueryString[ "letter "]有值
分页时datagrid 的向就按 Request.QueryString[ "letter "]的值绑定
page_load内代码 如下
if(this.Request.QueryString[ "letter "]!=null)
{
int count=0;
string letter=Request.QueryString[ "letter "].Trim();
ViewState[ "Letter "]=letter;
DataSet ds=this.GetDataByLetter(letter);
this.dg_BuildingList.DataSource=ds;
this.dg_BuildingList.DataBind();
if(ds.Tables.Count> 0)
{
count=ds.Tables[0].Rows.Count;
}
this.lbl_Count.Text=count.ToString();
}
请问怎么解决呢?
------解决方案--------------------------------------------------------
组合sql语句呗.
string sql = " ";
如果letter不为空,sql += "........ ";
如果其他查询不为空, sql += "....... ";
然后再把sql提交给数据库.
或者写存储过程.把各项查询值无论空或不空,交给存储过程编程处理.