用Server.Transfer可以实现同一页面分页时的传参吗?参数可能有很多(查询的参数)
注意翻到下一页时查询参数的获取,用Session的方法好像不现实,不知道什么时候清Session,因为要翻页。
而直接用url的传参的话,参数太多也不好,大家在做查询的结果分页时,怎么实现传参分页的?

解决方案 »

  1.   

    用aspnetpage 控件
    或分页类PagedDataSource
      

  2.   

    怎么不用aspnetpge这个分页控件呢,很好用的,网上有多例子,你可以去下载个下来。
      

  3.   

    页面用AspNetPager控件
    SQL语句用row_number()函数
      

  4.   

    手写代码用PagedDataSource
    或用自带的分页功能
      

  5.   


    建议用ViewState
    我之前也遇到过分页的问题,但那时候很傻,用的是int currentIndex=1
    这样可以吗?当然不行,当服务器把页面发送出去的时候这个变量也被清除掉了那最好的办法就是,你在把Html发送到客户端时候就把这个变量写到客户端页面中去,
    于是有了ViewState["currentIndex"]=1
    当客户端店家“下一页”再此请求回传数据的时候,就会把这个变量也传回来
    于是你在服务器端又可以读了 只不过你需要转一下型 
    比如Convert.toInt32(ViewState["currentIndex"])如果有不清楚的请Q我 312117511
      

  6.   

    翻页就是把变量值取出来加1例如 ViewState["currentIndex"]=convert.toInt32(ViewState["currentIndex"])+1;
      

  7.   

    用分页控件,
    如果数据不多就直接用PagedDataSource直接绑定吧
    如果数据多写存储过程先分好页再绑定
    简单一点的存储过程
    SELECT TOP (@PageSize) [filed1],[filed2]....FROM [tablename] WHERE id NOT IN (SELECT TOP (@pagesize*(@currentpage-1)) id FROM [tablename]) ORDER BY ......
    写方法的时候把pagesize,currentpage为做参数,这样就是需要哪几条记录就只取哪些记录而不是把所有记录都取出来再去筛选,性能方面也是一个需要考虑的问题呀
      

  8.   

    楼上的,用not in 不如用rownumber()函数,效率比not in要高
      

  9.   

    显示内容在Label中,弄超链接写脚本进行分页。
      

  10.   

    public string a{get {return viewstate[""].ToString();}set{..}}记录条件
    aspnetpager分页控件