通用权限管理系统中的分页解决方案

枕上诗书闲处好,门前风景雨来佳。这篇文章主要讲述通用权限管理系统中的分页解决方案相关的知识,希望能为你提供帮助。
  在做项目中,一定会涉及到数据分页的处理,如有一个通用的分页解决办法就好了,发现在通用权限管理系统中就有这种方案。
  基本上可实现所有业务共用一个分页方法。
下面是代码的核心部分:
【通用权限管理系统中的分页解决方案】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;

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

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









    推荐阅读