C#.NET 通用权限管理系统组件 大数据多表分页获取部分列的参考方法
2023-02-18 15:37:29 时间
往往我们开发各种信息系统的时候,不只是简单的从一个表读取数据,很可能是从多个表读取数据后,把结果展示在界面上,当遇到2个大表关联时,若技术上没进行一些处理,那分页显示时速度会非常糟糕,在通用权限管理系统组件了,有专门针对大数据的分页优化,下面的代码就是具体的实现方法。
#region private void DoSearch() 获取列表 /// <summary> /// 获取列表 /// </summary> private void DoSearch() { string searchValue = this.txtSearch.Text; // 总记录数量 int recordCount = 0; BaseManager manager = new BaseManager(this.DbHelper, this.UserInfo, "KEYPROJECT"); // 这个是需要显示的字段 manager.SelectField = "ZPResumeInfo.ID, ZPResumeInfo.A0101, ZPResumeInfo_Remark.Remark"; // 这个是2个表的关联 manager.CurrentTableName = "ZPResumeInfo INNER JOIN ZPResumeInfo_Remark ON ZPResumeInfo.ID = ZPResumeInfo_Remark.ResumeID"; // 这个是数据过滤条件 string whereConditional = " ZPResumeInfo.CreUser = " + this.UserInfo.Id; // 这个是排序顺序 string order = "ZPResumeInfo_Remark.ModifiedOn DESC"; DataTable dataTable = manager.GetDataTableByPage(out recordCount, this.myNavigator.PageIndex + 1, this.myNavigator.PageSize, whereConditional, order); dataTable.DefaultView.Sort = this.SortExpression + " " + this.SortDire; // 绑定分页控件 this.myNavigator.RowCount = recordCount; this.myNavigator.BindData(this.gridView, dataTable); // 按钮状态控制 this.SetControlState(); } #endregion
上面的例子代码就是从2个表里来的,大数据的分页显示效果参考,模仿上面的代码就可以制作你自己需要的数据了。
相关文章
- [Redis] redis的设计与实现-对象系统
- [Redis]Redis的设计与实现-链表/字典/跳跃表
- [MySQL]select和where子句优化
- [日常] nginx的错误日志error_log设置
- [日常] nginx记录post数据
- [redis] Redis的介绍
- [PHP] PHP在CLI环境下的错误日志
- [PHP] 2018年终总结
- [MySQL] INFORMATION_SCHEMA 数据库包含所有表的字段
- [日常] DNS解析概述
- [PHP] swoole的安装和简单使用
- [PHP] PHP闭包(closures)
- [PHP]代码执行和生命周期
- [PHP] 理解依赖注入
- [日常]总结2016年7月入职至2016年7月26号微盘所遇bug
- [PHP] 多进程通信-消息队列使用
- [PHP] PHP多进程处理tcp连接
- [PHP]PHP rpc框架hprose测试
- [日常] nginx与负载均衡策略
- [日常]nginx与网络事件模型