打开Visual Studio 2017 选择 项目----->管理nuget包  其他版本也有

输入paged 下载安装 pagedList和pagedList.mvc

在model文件新建一个分页的类比如课程:

 //要引入PagedList命名空间
using PagedList;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace jiaowu.Models
{
public class ViewCourse
{
//创建课程对象
public IPagedList<Course> Course { get; set; }
/**条件**/
//按姓名查询
public string Name { get; set; }
//排序条件
public string SortBy { get; set; } }
}

在中控制器中

  /// <summary>
/// 查询课程信息
/// </summary>
/// <param name="Name">课程名字</param>
/// <param name="page">当前页</param>
/// <returns></returns>
public ActionResult CourseList(string Name,int? pageIndex)
{
//查询所有的课程列表
var coures = en.Courses.OrderBy(m => m.Id);
//每页显示的数量
const int pageItems =;
//当前页
int currentPage = (pageIndex ?? );
//查询所有的课程信息
IPagedList<Course> pageCoures = coures.ToPagedList(currentPage, pageItems);
//实例花一个ViewCourse的对象
ViewCourse vcourse = new ViewCourse(); //判断用户名是否为空
if (string.IsNullOrEmpty(Name))
{
//为空查询所有
vcourse.Course = pageCoures;
}
else
{
//不为空根据姓名查询
vcourse.Course = pageCoures.Where(m => m.Name == Name).ToPagedList(currentPage,pageItems); ;
}
return View(vcourse);
}

View视图中

 <div style="width:1040px">
<div style="float:right">
@Html.PagedListPager(Model.Course, page => Url.Action("CourseList", new { Name = Model.Name, page }))
</div>
<div style="float:right;margin-top:28px;margin-right:10px">
第 @(Model.Course.PageCount < Model.Course.PageNumber ? 0 : Model.Course.PageNumber) 页 共 @Model.Course.PageCount 页
</div> </div>

Asp.NET MvC EF实现分页的更多相关文章

  1. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  2. ASP.NET MVC + EF 利用存储过程读取大数据,1亿数据测试很OK

    看到本文的标题,相信你会忍不住进来看看! 没错,本文要讲的就是这个重量级的东西,这个不仅仅支持单表查询,更能支持连接查询, 加入一个表10W数据,另一个表也是10万数据,当你用linq建立一个连接查询 ...

  3. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架 ...

  4. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(11)-验证码实现和底层修改

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(11)-验证码实现和底层修改 ASP.NET MVC+EF框架+EasyUI实现权限管系列  (开篇)   (1):框架搭建    ...

  5. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(7)-DBSession的封装

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(7)-DBSession的封装 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    ...

  6. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(5)-前台JqueryEasyUI前台实现

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(5)-前台JqueryEasyUI前台实现 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框 ...

  7. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(4)-业务逻辑层的封装

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(4)-业务逻辑层的封装 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2) ...

  8. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(3)-面向接口的编程

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(3)-面向接口的编程 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)  (1)框架搭建    (2):数据 ...

  9. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1)框架搭建 前言:这 ...

随机推荐

  1. 吴裕雄--天生自然python学习笔记:pandas模块DataFrame 数据的修改及排序

    import pandas as pd datas = [[65,92,78,83,70], [90,72,76,93,56], [81,85,91,89,77], [79,53,47,94,80]] ...

  2. 花生壳的ddns 关键时刻又掉链子,准备迁到阿里万网

    https://www.oray.com/news/affiche/?aid=628 免费版花生壳服务故障 因免费版机房线路节点负荷突然暴增,导致花生壳免费版登录缓慢或异常,或出现域名指向到127.0 ...

  3. Linux quota磁盘配额

    quota:磁盘配额 限制某一群组所能使用的最大磁盘配额 限制某一用户的最大磁盘配额 使用限制: 仅能针对整个filesystem 核心必须支持quota quota的记录文件 只对一般身份使用者有效 ...

  4. zoj2588-tarjan求桥/割边

    tarjan求桥,算法流程详见核心代码: void tarjan(int k){ dfn[k]=low[k]=++cnt; //fa[k]=(edge){f,0,fid}; for(int i=hea ...

  5. HDU-2544-最短路(各种最短路径算法)

    迪杰斯特拉算法--O(n^2) #include"iostream" #include"cstring" #include"cstdio" ...

  6. CentOS-Samba服务安装与配置

    title date tags layout CentOS6.5 Samba服务安装与配置 2018-09-03 Centos6.5服务器搭建 post 例题: 在服务器中安装Samba服务,创建共享 ...

  7. 使用jQuery在屏幕上居中一个DIV

    文章目录 我如何去使用jQuery在屏幕的中心设置<div>? 我喜欢给jQuery添加函数,所以这个函数将有助于: jQuery.fn.center = function () { th ...

  8. stack|session|fuss|anniversary

    N-COUNT A stack of things is a pile of them. 摞; 堆 例: There were stacks of books on the bedside table ...

  9. keepalive笔记之二:keepalive+nginx(自定义脚本实现,上述例子也可以实现)

    keepalive的配置文件 ! Configuration File for keepalived global_defs { notification_email { acassen@firewa ...

  10. mysql获取按日期排序获取最新的记录

    今天让一个数据查询难了.主要是对group by 理解的不够深入.才出现这样的情况 这种需求,我想很多人都遇到过.下面是我模拟我的内容表 我现在需要取出每个分类中最新的内容 select * from ...