权限管理、用户权限系统、开源用户权限系统、信息化建设标准基础数据管理平台
代码改变世界

C#.NET 通用权限管理系统组件 大数据多表分页获取部分列的参考方法

  通用C#系统架构  阅读(1649)  评论(3编辑  收藏  举报

 往往我们开发各种信息系统的时候,不只是简单的从一个表读取数据,很可能是从多个表读取数据后,把结果展示在界面上,当遇到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个表里来的,大数据的分页显示效果参考,模仿上面的代码就可以制作你自己需要的数据了。

 

 

 

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2011-01-14 权限设计中的数据灵活存储设计策略参考[以不变应万变]


C# ASP.NET 通用权限设计、通用权限管理、通用权限组件、单点登录、集中式权限管理、统一授权体系、分级管理分级授权


微信扫一扫加好友



点击右上角即可分享
微信分享提示