构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(8)-MVC与EasyUI DataGrid 分页

简介:

系列目录

前言

为了符合后面更新后的重构系统,文章于2016-11-1日重写

EasyUI Datagrid在加载的时候会提交一些分页的信息到后台,我们需要根据这些信息来进行数据分页再次返回到前台

实现

首先要让DataGrid支持分页,我们需要在JS Datagrid中加入下列几个属性

  1. 是否启用分页:pagination 默认是false
  2. 每页数量:pageSize 默认10
  3. 可选择每页数量:pageList 默认[10,20,30,40,50]
  4. 排序字段:sortName 默认null
  5. 排序类型:sortOrder 默认asc

OK加入后的代码变成这样

  Index

预览一下

实际已经分页,但是不正确的,每一页的数据一样。我们要根据分页的参数去取

查看技巧

OK我们控制器要根据他传递的参数写同样的参数名称,否则获取不到

看我们的SysSampleController 下的GetList方法,加入参数

  SysSampleController

BLL代码修改(IBLL也要修改参数 List<SysSampleModel> GetList(int page, int rows, string sort, string order,ref int total);)

  SysSampleBLL

 我们要在BLL层返回当前查询的全部条数,还要返回当前页得数据

补脑:ref关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用ref参数,则方法定义和调用方法都必须显式使用ref关键字。

大家看出这样太麻烦了,代码太不漂亮了,我们把常用的参数给封装了。

分装分页

  GridPager

把这个类放到Apps.Common, 我们的Apps.Common终于用到了
再次修改Controller的GetList

  SysSampleController

和修改BLL的GetList 还要修改IBLL --List<SysSampleModel> GetList(ref GridPager pager);

  SysSampleBLL

代码漂亮了不少,预览一下,还是正确的效果了。

总结

文章中一直演示做法,这种方式看起来非常反感,但是都是为了更好更仔细的了解系统,为后面快速开发做铺垫

本文转自ymnets博客园博客,原文链接:http://www.cnblogs.com/ymnets/p/3428740.html,如需转载请自行联系原作者
相关文章
|
7天前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
51 7
|
4月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
85 0
|
5月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
66 0

相关课程

更多