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,排序参数。

  • 相关阅读:
    commonjs
    基于webpack的vue开发环境搭建
    vs工程配置eslint检测环境
    h5笔记
    NPM install -save 和 -save-dev 区别
    小的div在大的div中垂直居中
    css position absolute相对于父元素的设置方式
    Python的支持工具[0] -> 环境包管理工具[1] -> Anaconda
    Python的支持工具[0] -> 环境包管理工具[0] -> pip
    代码编辑器[0] -> Vim/gVim[2] -> Vim 的相关知识
  • 原文地址:https://www.cnblogs.com/shya/p/4422666.html
Copyright © 2011-2022 走看看