ASP.NET实现带有分页信息的列表集合IPagedList
2015-09-18 16:09
591 查看
每次读取分页列表记录,都要把“当前页码”、“每页显示多少条记录数”和“总记录数”返回,调用函数的时候过于麻烦,一直以来都是用out返回值的方法来获取此类数值,后来有一次无意中看到国外的一个开源程序NopCommerce中有关于IPagedList类的封装,IPagedList是一个接口,再把分页的信息封装成IPagedList接口的属性,再弄一个PageList实现这个接口,真是好处多多啊。
IPagedList接口
[b]PagedList类[/b]
IPagedList接口
/// <summary> /// 分页列表接口 /// </summary> public interface IPagedList { int PageIndex { get; } int PageSize { get; } int TotalCount { get; } } public interface IPagedList<T> : IPagedList, IList<T> { }
[b]PagedList类[/b]
/// <summary> /// 分页列表类 /// </summary> /// <typeparam name="T">实体类型</typeparam> [Serializable] public class PagedList<T> : List<T>, IPagedList<T> { /// <summary> /// 默认构造函数,将源数据封装成分页集合 /// </summary> /// <param name="source">源数据(IList或List泛型集合)</param> /// <param name="pageIndex">当前第几页</param> /// <param name="pageSize">每页显示记录数</param> public PagedList(IList<T> source, int pageIndex, int pageSize, int totalCount) { TotalCount = totalCount; this.PageSize = pageSize; this.PageIndex = pageIndex; this.AddRange(source); } public int PageIndex { get; private set; } public int PageSize { get; private set; } public int TotalCount { get; private set; } }
相关文章推荐
- ASP中一个“对象关闭时,不允许操作。”的诡异问题……
- ASP.NET MVC5网站开发我的咨询列表及添加咨询(十二)
- IIS7.5显示ASP的详细错误信息”500 – 内部服务器错误解决”
- asp.net mvc 多文件上传
- ASP.NET MVC5网站开发咨询管理的架构(十一)
- ASP.NET MVC5网站开发修改及删除文章(十)
- ASP.NET新建解决方案和网站
- ASP.net Web API允许跨域访问解决办法
- ASP.NET动态网站制作(2)--css(1)
- asp.net之ajax
- asp.net web实现定时器功能
- asp.net MVC4在Action间跳转 RedirectToAction 传值参数问题
- CasperJS needs PhantomJS v1.× 错误解决方法
- 在Windows上安装casperjs
- ASP.NET窗体身份验证详解
- ASP替换、保存远程图片实现代码
- 11种ASP连接数据库的方法
- 怎么设置远程ASP网页和MYSQL数据库的连接
- ASP.NET Web API实现微信公众平台开发(一)服务器验证
- ASP.NET如何使用JSON