我一直试图在LINQ实体中执行一个左联接类型的表达式,但是DefaultIfEmpty方法的工作方式与我预期的不同--它为每个CounterNo返回一个空行,而每个CounterNo在Readings表中没有匹配。
var leftjoin = from counter in database.Counters
join reading in database.Readings
on counter.CounterNo equals reading.CounterNo into gj
from x in gj.DefaultIfEmpty()
select x;这样,我就不知道计数器表中的哪些行没有对应的行,即读表。
我该怎么做呢?
发布于 2014-05-08 18:45:51
听起来,您只是不想在from x in gj.DefaultIfEmpty()中添加,而是希望左侧表中的每个项都与右侧表中的一组项配对(该组可能有零个元素,这是如何知道何时没有匹配的项),这正是删除该行时所得到的行为。
https://stackoverflow.com/questions/23550037
复制相似问题