zoukankan      html  css  js  c++  java
  • MVC分页示例

    分页说明

    对于大多数非枚举数据,我们都需要进行分页管理。在WEBFORM时代,有GridView,也可以配合AspNetPager很方便的实现分页,到了MVC,也同样可以使用MVCPager,作者都是同一人,感谢他为大家提供这么方便的分页组件。

    使用说明

    1. 在Views文件夹的web.config里导入命名空间,否则需要在每个视图页面导入:
      <add namespace="Webdiyer.WebControls.Mvc"/>
    2. 在控制器里引用命名空间
      using Webdiyer.WebControls.Mvc;
    3. 对分页返回的IEnumerable或者IQueryable对象使用ToPagedList方法返回一个PagedList对象,并传递给视图
      PagedList<MemberEntity> list = DataAccessFactory.MemberRepository.FindPageList(m => m.MemberId != Guid.Empty, m => m.CreateTime).ToPagedList(pageindex, 5);
      return View(list);
    4. 在视图里声明model类型
      @model PagedList<MemberEntity>
    5. 循环输出分页内容后调用分页帮助方法生成分页html代码
      @Html.Pager(Model, new PagerOptions { ShowPageIndexBox = true, PageIndexBoxType = PageIndexBoxType.DropDownList, ShowGoButton = false, FirstPageRouteName = "Default" }, "Paging")

    顺便写一下EF的排序

    比如,我们实现了一个带排序的分页方法

            public virtual IQueryable<TEntity> FindPageList<S>(Expression<Func<TEntity, bool>> whereLambda, Expression<Func<TEntity, S>> orderLambda, bool isAsc, int page, int pageSize);

    我们可以这样去调用:

    DataAccessFactory.MemberRepository.FindPageList(m => m.MemberId != Guid.Empty, m => m.CreateTime);

    注意,其中第二个参数就是上面的S,排序参数。

  • 相关阅读:
    山丽防水墙客户端的卸载
    还原冰点密码清除
    STP学习总结
    NTFS权限设置时卡死
    SQL server 2000安装时“以前的某个程序安装已在安装计算机上创建挂起”
    Projecet客户端登陆无法通过验证
    Linux-nftables
    Linux-kernel-timeline
    blog编辑技巧
    Linux-swap
  • 原文地址:https://www.cnblogs.com/shya/p/4422666.html
Copyright © 2011-2022 走看看