zoukankan      html  css  js  c++  java
  • 通用权限管理系统中的分页解决方案

     在做项目中,一定会涉及到数据分页的处理,如有一个通用的分页解决办法就好了,发现在通用权限管理系统中就有这种方案。

     基本上可实现所有业务共用一个分页方法。

    下面是代码的核心部分:

    CommonServices.cs

     
       using DotNet.Business;
       using DotNet.Utilities;
          
            /// <summary>
            /// 获取分页数据(防注入功能的) 
            /// </summary>
            /// <param name="dbHelper">dbHelper</param>
            /// <param name="recordCount">记录条数</param>
            /// <param name="tableName">数据来源表名</param>
            /// <param name="selectField">选择字段</param>
            /// <param name="pageIndex">当前页</param>
            /// <param name="pageSize">每页显示多少条</param>
            /// <param name="conditions">查询条件</param>
            /// <param name="dbParameters">查询参数</param>
            /// <param name="orderBy">排序字段</param>
            /// <returns>数据表</returns>
            public static DataTable GetDataTableByPage(IDbHelper dbHelper, BaseUserInfo userInfo, out int recordCount, string tableName, string selectField, int pageIndex, int pageSize, string conditions, List<KeyValuePair<string, object>> dbParameters, string orderBy)
            {
                DataTable result = null;
                recordCount = 0;
                if (null != dbHelper)
                {
                   recordCount = DbLogic.GetCount(dbHelper, tableName, conditions, dbHelper.MakeParameters(dbParameters));
                    result = DbLogic.GetDataTableByPage(dbHelper, tableName, selectField, pageIndex, pageSize, conditions, dbHelper.MakeParameters(dbParameters), orderBy);
                }
                return result;
            }
    

    所有的实现分页的业务层直接调用这个方法即可。

     还有一个是可以调用存储过程的,大家可以自己研究下。

  • 相关阅读:
    源码阅读笔记 BiLSTM+CRF做NER任务(一)
    leetcode题 寻找两个有序数组的中位数
    动手实现感知机算法,多分类问题
    剪绳子 牛客网-剑指Offer_编程题
    [SCOI2016]妖怪 牛客网的ACM省选题,个人看法,欢迎交流
    BERT 学习笔记
    解决图着色问题 python代码实现
    维吉尼亚密码及程序实现
    迪菲-赫尔曼密钥交换
    分布式系统组件之配置中心
  • 原文地址:https://www.cnblogs.com/hnsongbiao/p/3614457.html
Copyright © 2011-2022 走看看