关于左连接和whereif的使用
1.左连接:Linq左连接是左表与右表连接时,无论右边是否有跟左表对应的数据,左表都能查询得出来。
图例(复制来的):

举个栗子:
期末考试9门课,有人考8门后心态崩了,第九门不考了。
在成绩管理系统中,九门课程不管多少分都需要查出来,但是成绩表中没有第九门课的数据,用左连接就可以实现,不管课程多少分,有没有数据,都可以显示这个课程。
Linq的代码写法:
var resp=from 自定义左表名称 in 实体模型里面得数据表格
Join 自定义右表模型 in 实体模型里面得数据表格 on 自定义左表.连接右表的字段 equals 自定义右表.连接的字段
into 自定义表名称
(from 自定义表名称 in 自定义表名称(into).DefaultIfEmpty )
2.whereif的使用
where会筛选符合条件的数据,但是当作为条件的入参没有传入时,就筛选不出合适的数据。
whereif就可以当作过滤条件使用,如果if的条件为true,就where筛选一下,如果没有就过。

浙公网安备 33010602011771号