layui table分页查询
发布日期:2021-11-02 20:00:49 浏览次数:2 分类:技术文章

本文共 1787 字,大约阅读时间需要 5 分钟。

开发工具与关键技术: MVC

作者:彭水清

撰写时间:2019/4/17

首先呢,我得先说明LayuiTablePage、LayuiTableData这三个我自定义的类,LayuiTablePage这个类中有page(代表当前页码)、limit 代表每页数据量、public int

GetStartIndex(){return (page - 1) * limit;}(分页开始序号)、public int GetEndIndex(){ return page * limit - 1;}(分页结束序号)这四个字段;LayuiTableData这个类中有 code(数据状态码 – 可以不设置)、msg(状态信息
– 可以不设置)、count(总行数 – 必须)、data(数据 – 必须)这四个字段。 另外我使用layui插件来初始化数据表格,这里传参就不需要这么麻烦。

我们要想做分页查询,我们应该要从数据库中查询到学院表的所有数据,所以我们通过创建一个实体类(varLinq)来接收数据库中所有学院数据,接着我们自定义一个int类型的名字来接收到上面我们所说到的一个实体类(varLinq)的总行数;当这个表格的总行数超过limit时,多出来的数据将会呈现在第二页,这时我们需要通过Skip()跳过第二页GetStartIndex数据(也就是说当我们点击下一页时,第二页将会从limit+1的位置开始)获取到余下的数据,Take()是让我们可以看到第二页的起始数据到末尾数据,获取指定n数量的连续数据。不过在使用skip和take之前,我们不要忘记在使用它们之前,必须要使用orderby排序。最后一步就是我们在创建一个类来记录我的总行数和数据,然后我就封装返回的数据,总行数就等于我查询学院表的总行数,数据就等于我分页查询的学院表的数据,再返回页面上。

以下就是Visual Studio 2015 分页查询控制器的代码:

public ActionResult SelectAcademeAll(LayuiTablePage layuiTablePage)    {        var varLinq = from tbAcademe in myModel.SYS_Academe                      orderby tbAcademe.AcademeID                      select tbAcademe;        //查询SYS_Academe的总行数        int totalRow = varLinq.Count();        //分页查询SYS_Academe的数据        //!!!!!!Skip  Take使用前必须要使用orderby        List
list = varLinq .Skip(layuiTablePage.GetStartIndex()) .Take(layuiTablePage.limit) .ToList(); //封装layui table数据 LayuiTableData
layuiTableData=newLayuiTableData
{ count = totalRow, data =list }; //返回json return Json(layuiTableData, JsonRequestBehavior.AllowGet); }

新手上道,请多多指教。如果有更好的方法或不懂得地方欢迎在评论区教导和提问喔!

转载地址:https://blog.csdn.net/weixin_44540414/article/details/89370945 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Excel数据导入
下一篇:layui.table

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月07日 22时26分42秒