日期:2014-05-20  浏览次数:20439 次

关于URL问题,其实不知道如何表达,大虾们进来看看
假设现在一个页面   forum.aspx
该页面里有一GridView,  
当打开页面forum.aspx?page=2   时,定向到   GridView   的第二页。
如何   实现?!

当点击了GridView   的   PageIndex   的   2时(第二页),   URL   改为forum.aspx?page=2,
然后再转向到   GridView       的第二页。

如何实现。
谢谢各大虾们!!


偶现在用的一个土方法,就是每次都   Response.Redirect( "forum.aspx?page=2 ")
然后再页面加载时   Request.QueryString[ "page "]   再定向到   GridView的第X页
过程中是再次读数据库,   再绑定   GridView,   不但效率低,还很不科学,偶觉得-_-!

------解决方案--------------------
自己写个分页 采用 <a href= "forum.aspx?page=2 "> 2 </a> 就可以
不过分页没那么好写,你多积累知识 慢慢想
------解决方案--------------------
GridView1.PageIndex = Convert.ToInt32(Request.QueryString[ "page "]);
------解决方案--------------------
建议你不要使用GridView的翻页事件

GridView所在的页面不用响应回发
翻页浏览用超链接
每次Page_Load直接取Request.QueryString[ "page "]
将页码作为分页参数提供给:①数据访问接口或②GridView作为分页依据
------解决方案--------------------
难道你以为回发就不会重新访问数据库了么?

我刚接触ASP.NET的时候也有这种错觉

但是,除非采取了一定的缓存策略,一次搜索请求就必然伴随一次数据库访问

我们能做的,就是在每次访问数据库时只取我们关心的那部分数据(比如用sql语句或存储过程在DB端分页后得到数据集)来提高效率