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

时间: 2024-10-23 09:33:15

MVC分页示例的相关文章

MvcPager 概述 MvcPager 分页示例 — 标准Ajax分页 对SEO进行优化的ajax分页 (支持asp.net mvc)

该示例演示如何使用MvcPager最基本的Ajax分页模式. 使用AjaxHelper的Pager扩展方法来实现Ajax分页,使用Ajax分页模式时,必须至少指定MvcAjaxOptions的UpdateTargetId属性,该属性值即是分页后要通过Ajax来更新的 DOM 元素的 ID. Ajax.Pager()方法返回AjaxPager对象,您可以通过Ajax.Pager()方法的重载来传递PagerOptions和MvcAjaxOptions参数,也可以通过新的AjaxPager的Opti

转:MVC分页

原文地址:http://www.cnblogs.com/iamlilinfeng/p/4075292.html 分页总是搞得我很烦,也是因为刚接触,貌似有好多插件,之前在用一个,可是后来发现一翻页原来的筛选项就提交不上了,然后就换了这个,其实这篇文章对我而言最起作用的还是View文件中BeginForm中的参数 new RouteValueDictionary { { "id", "" } },也许原来的分页方式加上这个参数也是可以的,还没尝试. 前言 前几天在博客

Mvc分页组件MvcSimplePager代码重构

1 Mvc分页组件MvcSimplePager代码重构 1.1 Intro 1.2 MvcSimplePager 代码优化 1.3 MvcSimplePager 使用 1.4 End Mvc分页组件MvcSimplePager代码重构 Intro MvcSimplePager 是为解决分页的而做的一个通用.扩展性良好的轻量级分页扩展,可以自定义分页时调用的方法,自定义分页所用的样式,样式与代码分离,维护方便. 网上有许多分页都是查询所有数据再从中查询某一页的数据,但是个人感觉数据很少时还可以,如

Asp.NET MVC X.PageList.MVC 分页详解以及自定义样式

最近在研究MVC,自己做了个小项目:其中用到了分页功能,在网上找了很多相关的第三方插件,最后选择了X.PageList.MVC,插件是开源的,有利于学习所以选择了它,这并不是说其它的分页插件不好,只是个人爱好,当然,用于以后还是会说好的.^^ 首先可以看下源,在GitHub上,地址如下: X.PageList.MVC GitHub 源代码地址 初步看了一个项目比较精简,核心部分为X.PagedList.Mvc中的内容,配置文件为:PagedListRenderOptions.cs 这个插件可以完

SenchaTouch2.3.1 中使用listpaging以及pullrefresh插件 做的分页示例

本实例其实也比较简单,自己定义一个PullRefreshFn插件继承Ext.plugin.PullRefresh. 主要给其添加了refreshFn下拉监听事件.listpaging插件未做任何修改.再将这两个插件添加到 list中. 本例未采用MVC模式. app.js代码如下: Ext.require(['Ext.form.Panel', 'Ext.data.Store', 'Ext.dataview.DataView']); //------------------------------

C# MVC分页,razor

IMVCPages interface IMVCPages { int GetItemsCount(); int GetPageSize(); int GetPagesCount(); /// <summary> /// 当前页面索引,用于分页 /// </summary> int CurrentPageIndex { get; set; } } View <div> 查询到 @Model.GetItemsCount() 条记录,共 @Model.GetPagesCou

MVC 分页获取数据 及点选按钮

@model PagedList<Lyxm.Entity.Suggestion>@using Webdiyer.WebControls.Mvc <div>    <ul class="breadcrumb">        <li>            @Html.ActionLink("基础维护", "", "")            <span class=&quo

PagedList.MVC分页

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86

SSRS 2012 聚合函数 -- 指定分页示例

SSRS 2012 聚合函数 -- 指定分页示例 在一般报表中,若是使用者希望明确数据行能够以每20笔一页的方式呈现.也可以利用刚才介绍的Rownumber函数. 步骤1: 利用刚才隔行换色示例的报表,在产品大类组外加入父组,并在组对象的表达式方格中写入: =Rownumber(Nothing)\20 步骤2: 在设置组时,请勿勾选"添加组页眉"与"添加组页脚"选项,同时请将系统自动产生的组数据行删除. 步骤3: 此外,在产生组时,系统会自动把组定义式作为排序的依据