备忘:

var data = BoshccEntities.Current.TB_MB_1.GroupJoin(BoshccEntities.Current.TB_MB_2, o => o.HospitalID, m => m.MemberID, (t, m) => new { t, m }).GroupJoin(BoshccEntities.Current.TB_CM_3, o => o.t.ServiceCode, s => s.DicNum, (o, s) => new { t = o.t, m = o.m, s }).GroupJoin(BoshccEntities.Current.TB_CM_3, o => o.t.PaymentMethodCode, p => p.DicNum, (o, p) => new { t = o.t, m = o.m, s = o.s, p }).Where(o =>(isenable.HasValue ? o.t.IsEnable == isenable.Value : true)&& (hasHospital ? hospitalIDs.Contains(o.t.HospitalID) : true)&& (hasService ? o.t.ServiceCode == service : true)&& (hasPayment ? o.t.PaymentMethodCode == payment : true)).OrderBy(o => o.t.ID).Select(o => new{ID = o.t.ID,HospitalID = o.t.HospitalID,ServiceCode = o.t.ServiceCode,PaymentMethodCode = o.t.PaymentMethodCode,IsEnable = o.t.IsEnable,Remark = o.t.Remark,Hospital = o.m.FirstOrDefault(), //关键1Service = o.s.FirstOrDefault(),Payment = o.p.FirstOrDefault()}).ToList() //关键2.Select(o => new TB_MB_4{ID = o.ID,HospitalID = o.HospitalID,ServiceCode = o.ServiceCode,PaymentMethodCode = o.PaymentMethodCode,IsEnable = o.IsEnable,Remark = o.Remark,HospitalName = o.Hospital == null ? "" : o.Hospital.HospitalName, //关键3ServiceName = o.Service == null ? "" : o.Service.DicName,PaymentName = o.Payment == null ? "" : o.Payment.DicName});

转载于:https://www.cnblogs.com/xachary/p/4027178.html

Linq GroupJoin 使用相关推荐

  1. Linq To Sql中实现Left Join与Inner Join使用Linq语法与lambda表达式

    当前有两个表,sgroup与sgroupuser,两者通过gKey关联,而sgroup表记录的是组,而sgroupuser记录是组中的用户,因此在sgroupuser中不一定有数据.需要使用Left ...

  2. NHibernate初学二之简单执行SQL及HQL、Linq

    上篇文章简单介绍NHibernate之简单增删改查,本文将会简单介绍有关执行NHibernate的SQL.HQL及存储过程: 一:执行SQL语句实例,运用CreateSQLQuery方法 public ...

  3. LINQ教程二:LINQ操作语法

    LINQ查询时有两种语法可供选择:查询表达式语法(Query Expression)和方法语法(Fluent Syntax). 一.查询表达式语法 查询表达式语法是一种更接近SQL语法的查询方式. L ...

  4. LINQ to SQL语句(4)之Join

    LINQ to SQL语句(4)之Join Join操作符 适用场景:在我们表关系中有一对一关系,一对多关系, 多对多关系等.对各个表之间的关系,就用这些实现对多个表的操作. 说明:在Join操作中, ...

  5. LINQ To SQL 语法及实例大全

    LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子 ...

  6. 从LINQ开始之LINQ to Objects(上)

    LINQ概述 LINQ,语言集成查询(Language Integrated Query),它允许使用C#或VB代码以查询数据库相同的方式来操作不同的数据源. LINQ体系结构 从上图可以看出,LIN ...

  7. LINQ学习笔记之四:查询内存对象

    附上WORD文档,从这里下载. 查询内存对象 这一章中主要介绍了使用LINQ查询内存对象的一些基本语法.在下一章将会有更高级的用法介绍.本章中的示例数据是一个简单的出版社信息.这里是数据文件.下面的图 ...

  8. ADO.Net Entity Framework Linq To Entities 语法功能汇编

    Linq To Entities 的语法基础可以参考: Microsoft Language Integrated Query (LINQ) 从入门到精通 1.使用ObjectQuery类的ToTra ...

  9. LINQ标准查询操作符

    本文基于.NET Framework 2.0编写 本文PDF下载 推荐大家下载本文的PDF进行阅读,可以方便的使用书签来阅读各个方法,而且代码中的关键字是高亮显示的. 转载请注明出处. 一.投影操作符 ...

最新文章

  1. bootstrap-关闭按钮
  2. mysql语法学习(一)__Instances__表
  3. pat 乙级 1009 说反话 (C++)
  4. Postman用法说明
  5. 自动补足算法是什么_数据、算法岗的几点经验分享!
  6. python如何读取数据时出现错误_连接数据库时出现的错误,怎样解决??
  7. JavaTPoint Python 中文教程【翻译完成】
  8. 单片机ADC采样算法----限幅消抖滤波法
  9. [Svn不提交Classes文件夹下的文件][SVN不交付Classes解决方案]
  10. python PIL生成字母验证图片
  11. html新年倒计时特效,js实现新年倒计时效果
  12. 【LKM】make 错误:make -C /lib/modules/4.15.0-58-generic/build SUBDIRS=/xxx
  13. seaweedfs报存储错误
  14. 优化MySchool数据库设计(SQL Server)
  15. 直播服务器不能正常运行,解决人人商城互动直播通信服务无法通信问题
  16. mysql安装apply_MySQL安装过程中出现“APPLY security settings错误”的解决方式
  17. cad无法启动此程序 因为计算机中丢失,Win10无法启动CAD提示计算机中丢失ac1st16怎么办?...
  18. 跑步进入元宇宙,王老吉能看到不一样的未来吗?
  19. JavaFx的ScrollPane的面板以及滚动条的css的自定义化
  20. 18款奔驰C200L升级柏林之声音响,音质享受,驾驶乐趣

热门文章

  1. spring 查找实现类_69道Spring面试题和答案
  2. linux里用c实现cat_【案例】用T云做了什么能让企业在工业自动化控制系统行业里实现逆向增长?...
  3. 基于javaweb(springboot+mybatis)宠物医院预约管理系统设计和实现以及论文报告
  4. HTML+CSS+JS实现 ❤️爱心文字3D旋转动画特效❤️
  5. HTML+CSS+JS实现 ❤️感谢关注3D文字动画特效❤️
  6. matlab绘制8条曲线,科学网—【Matlab】如何用plotyy对应坐标绘制多条曲线 - 叶瑞杰的博文...
  7. android string参数最大长度,每日一问 | 我们经常用的 String类型,你知道它最大可以放多长的字符串吗?...
  8. 如何把表格做成源代码_他来了,他来了,文字、表格、公式图片识别神器V0.1测试版...
  9. java人民币读法转换
  10. kmeans python自定义初始聚类中心_机器学习-KMeans聚类 K值以及初始类簇中心点的选取...