这篇文章介绍分页对象的封装,如何优雅的对数据进行分页。
先上调用代码:
我们希望能在一个Enumerable对象后面直接.ToPagedList(pageIndex,pageSize)这样优雅的调用分页代码。 从图中可以看到,代码并没有报错,说明这是可以哒。下来就来详细说说这个.ToPagedList()方法背后的"男人"。
首先我们需要一个返回值的接口定义,IPagedList<T>:
这是我们希望得到的数据结构,有了定义,我们就要实现它:
嗯,一个泛型集合和几个分页需要的属性。
然后这个是Enumerable的扩展方法,这样我们就可以.ToPagedList()啦:
结合mvc,Action的返回值就可以是IPagedList<T>类型啦。
一键分页哦!