zoukankan      html  css  js  c++  java
  • P34 翻页(上)






    查询的字符串,本身不属于资源的一部分。如果pageSize传了100万 设置的数值比较大,也会造成性能问题,所以我们在服务器端也要对查询请求的笔数进行控制。如果没传参数,默认查询也应该分页。

    应该是EF Core层进行分页

    开始写代码

    加上当前页和每页显示的数据,应该是通过FromQuery传递进来的。但是这里已经有了一个FromQuery的参数了。


    在这个类里面加上分页的属性

    设置默认的参数

    pageSize被设置太大的问题,添加最大值。

    快捷键propfull

    自动生成


    alt+enter。这个应该是Resharper里面的快捷键。



    set这里就要进行比较

    进入到这个方法里面,加分页

    我们必须针对数据存储这个级别进行分页。
    这里转换成了一个IQueryable类型,这个类型有个特点就是延迟执行。这里相当于开始组建查询表达式。

    遇到toList或者SingleOrDefault时候才会真正的去执行sql

    分页必须在所有的过滤之后、




    这块代码的逻辑,可以直接删掉。这里把这段代码删掉。

    测试



    返回了空数组

    这里加上默认值。




    看下控制台执行的sql


    加上分页的参数

    故意不写pageSize。返回422表示客户端引起的错误。

    pageNumber输入0返回了一条数据,这样也是不对的

    我们需要自己在model类里面加上验证

    结束

  • 相关阅读:
    Ubuntu+Windows双系统升级Windows启动项消失恢复
    day19 Servlet Filter
    day17 dbutils 和 jdbc 多表操作
    day16 事务
    day15 分页及 JDBC 大数据的处理
    day14 JDBC
    day13 MySQL 及数据库相关
    Windows系统中完全卸载MySQL数据库,实现重装
    Elasticsearch 6.5.4 安装IK Analysis插件
    js 常用功能
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/14106363.html
Copyright © 2011-2022 走看看