关于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端分页后得到数据集)来提高效率