打开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. Tricks of Android's GUI

    Tricks of Android's GUI */--> Tricks of Android's GUI 1 layoutweight In LinearLayout, the default ...

  2. Qt error C2338: No Q_OBJECT in the class with the signal错误解决办法(无法编译过信号与槽)

    由于没有继承QObject类而引起的 只需继承QObject类即可 如果已经继承了QObject类,编译还出现错误 将QObject类放在最前面继承:public QObject 最后即可编译通过

  3. [LC] 215. Kth Largest Element in an Array

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...

  4. Chrome开发者调试工具

    参考资料 Chrome Console不完全指南 Chrome使用技巧 Chrome开发工具详解 结束语 工欲善其事,必先利其器.

  5. 【AUTO Uninstaller - 使用教程】Autodesk系列软件终极完美修复卸载工具【转载】

    小伙伴是不是遇到 CAD/3dmax/maya/Revit/Inventor 安装失败或者安装不了的问题了呢?AUTODESK系列软件着实令人头疼,CAD/3dmax/maya/Revit/Inven ...

  6. labview程序结构

    三种范式:面向过程.面向事件,面向对象:六种模式:标准状态机.消息队列.生产者/消费者(事件).生产者/消费者(数据).用户界面事件处理.主/从 事件结构相当于是一个while语句里边嵌套了一个条件结 ...

  7. [LC] 100. Same Tree

    Given two binary trees, write a function to check if they are the same or not. Two binary trees are ...

  8. Oauth2.0 协议简介及 php实例代码

    转自:http://www.dahouduan.com/2017/11/21/oauth2-php/ https://blog.csdn.net/halsonhe/article/details/81 ...

  9. google搜索运算符+101个Google技巧 - Google技巧的终极收集

    下面内容整理自网络 搜索运算符 如果您使用我们的基本搜索技巧后,并未找到想要搜索的内容,可以尝试使用搜索运算符.您只需在 Google 搜索框中将这些符号或字词添加到搜索字词中,即可更好地掌控要显示的 ...

  10. Django中的Model.objects.create() 和 Model() 的区别?

    Django 官方文档说明 objects.create 是 A convenience method for creating an object and saving it all in one ...