码迷,mamicode.com
首页 > Web开发 > 详细

.net Linq多表组合查询结果集

时间:2019-12-03 11:42:05      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:none   查看   lis   esc   set   显示   where   null   姓名   

背景:

主流程表中包含员工ID及流程类型ID,在页面查看流程是需要显示员工姓名及流程名称

操作:

技术图片
 //先进行分页处理原始数据
            var result = from p in _dbContext.Set<BeWorkflowContent>()
                         select p;
            if (searchWhere != null)
                result = result.Where(searchWhere);
            if (order != null)
                result = result.OrderByDescending(order);
            rowCount = result.Count();
            
            //多表查询组装最后的数据模型
            var query = from a in result
                        join b in _dbContext.BeUser on a.UserId equals b.UserId
                        join c in _dbContext.BeWorkflow on a.WorkflowId equals c.WorkflowId
                        select new WorkFlowContentV()
                        {
                            CustomerName = a.CustomerName,
                            WorkflowContentId = a.WorkflowContentId,
                            CarType = a.CarType,
                            CarStyle = a.CarStyle,
                            CarLicense = a.CarLicense,
                            UserName = b.TrueName,
                            WorkflowName = c.WorkflowName
                        };
            return query.ToList();
View Code

 

PS:select new之后一定要加对应的类名,不然返回后就是对象转换时会有问题

.net Linq多表组合查询结果集

标签:none   查看   lis   esc   set   显示   where   null   姓名   

原文地址:https://www.cnblogs.com/yhnet/p/11975852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!