zoukankan      html  css  js  c++  java
  • .net EF Join 关联表分页查询

    Join中第二个参数和第三个参数即为两张表关联对应的字段   

    第四个参数new 后面如果不写Model名,系统会自动生成带字段的list类型

                IQueryable<Operator> operators = operatorService.GetAll();
                IQueryable<Training> trainings = trainingService.GetAll();
                var list = trainings.Join(operators, a => a.OperatorId, b => b.Id, (a, b) => new OperatorTrainingReportVM
                {
                    EmployeeNO = b.EmployeeNO,
                    Name = b.Name,
                    Sex = b.Sex,
                    AreaName = b.Area.Name,
                    CostName = b.Cost.Name,
                    OnBoardDate = b.OnBoardDate,
                    ShiftName = b.Shift.Name,
                    DirectorNO = b.Director.EmployeeNO,
                    DirectorName = b.Director.Name,
                    ConfirmDate = b.ConfirmDate,
                    IsDimission = b.DimissionDate != null ? true : false,
                    DimissionDate = b.DimissionDate,
                    ServiceDays = (int)DbFunctions.DiffDays(b.OnBoardDate, DateTime.Now),
                    PositionName = b.Position.Name,
                    PositionLevelName = b.PositionLevel.Name,
                    DimissionName = b.Dimission.Name,
                    DimissionReason = b.Dimission.Reason,
                    StartDate = a.StartDate,
                    EndDate = a.EndDate,
                    ExamineDate = a.ExamineDate,
                    ExpireDate = a.ExpireDate,
                    Enginner = a.Enginner,
                    Trainer = a.Trainer,
                    Score = a.Score,
                    StandardScore = a.StandardScore,
                    Result = a.Result,
                    CourseName = a.Course.Name,
                    OperationLevelName = a.OperationLevel.Name,
                    Enabled = b.Enabled
                }).Where(whLamdba);
                total = list.Count();
                var result = list.OrderBy(t => t.EmployeeNO).Skip(start).Take(pageSize).ToList();


    其中Join部分具体是inner join还是left join,EF会自动根据查询条件生成相应的SQL

  • 相关阅读:
    关于SNS网络
    面向对象中的IS A和HAS A 问题
    项目进度检查
    【php】php Apache 怎么创建虚拟目录
    【IE6】iframe在IE6下出现横向滚动条的解决方案
    【javascript基础】Javascript的getYear、getFullYear、getUTCFullYear异同
    【java】JAVA环境配置
    UTF8 GBK UTF8 GB2312 之间的区别和关系
    【转发】10 个技巧助你写出卓越的jQuery插件
    【前端优化】你想不到的压缩方法:将javascript文件压缩成PNG图像存储
  • 原文地址:https://www.cnblogs.com/asd14828/p/6514321.html
Copyright © 2011-2022 走看看