给你个参考建议:
其实标准的做法不是使用数据集,这个很简单,网上也有很多资料。大概分一下几个步骤:
1.实现分页的存储过程,包括查询条件,当前页数、页面显示记录数,这个能搜索到很多资料。
2.实现一个数据访问层,你可以使用ADO.NET向导,也可以自己写代码实现,调用你刚才的分页的存储过程。这里可以返回DataSet(暂时存放单页的数据用,可以多加一个总记录数,这样一边页面计算总的页数).
3.业务逻辑层,可以把这个数据访问层方法返回的数据集DataSet,转换为你的实体类,实体类在放到list<entity>,这样返回结果。
4.最后绑定给你的gridview.datasource.你在页面上可以显示当前页,页数,总页数,当然你也可以计算出中间页面的可能的连续数字。比如当前是1,每页10条,总页面8个,你就可以显示1.2.3.4.5.6.7.8,这个可以动态代码实现。
希望对你有帮助,这样的代码网上很多,自己动手才有收获~
哎,你要是觉得麻烦你直接使用强类型数据集好了。
如果绑定实体类的话,你在试题类中增加 总页数,当前页码,数据总量的字段.
在取道10条记录后,直接为对象赋值的时候,把这些数据加进去.
绑定后,在gridview下面增加用户控件,暴露出[总页数,当前页码,数据总量]这几个属性.直接给属性赋值就ok了
或者把分页的控制也放进用户控件中,这样,在需要分页的页面直接拖入控件就可以可.控件可以在viewstate中记录 当前页,和你需要的信息.每次就是page_load中 写一下而已