DataList的一次分页困惑

一直不知道该怎么样给没有内置分页的DataLiat进行分页,网上提供的分页算法大致两种,一种是通过数据库分页,另一种是通过PageDataSource,数据库的分页是肯定高效的,但是我还没有学会,而且使用sql2000和sql2005的数据库分页方法是不同的,而我使用的是sql2000,没有内置的分页函数。通PageDataSource分页的方法很多,但是有一点要求,那就是DataSource必须是DataSet的Row,而我学习使用的3层用的是返回泛型接口IList<>,我没有好的解决办法,在博问上50分悬赏也没有人回答,很疑惑,今天找到Scott Mitchell的asp.net2.0数据教程,因为3层结构我是看了前3章才入的门。第四十四章是专门讲DataList和Repeater数据分页的,其中有段代码给了我很大的启示:

Code

“获得所有产品,然后通过PagedDataSource进行结果限制”

我通过泛型获得的也是所有结果,那么是不是可以筛选结果获得我所需要的呢?

于是有了下面的代码:

Code

结果是可以的,通过设置ObjectDataSource的筛选参数,进行分页设置。

虽然达到了需求,但是有很大的浪费。希望博友能帮我想想更好的办法

原文地址:https://www.cnblogs.com/kulong995/p/1319748.html