Linq to entity 3.5 左联接问题

在linq to sql 中左联接可以这么写:
from q1 in table1
join q2 in table2
on q1.col equals q2.col into tem_table
from q3 in tem_table.DefaultIfEmpty()
select new {
    name1 = q1.col
    name2 = q3 == null? "":q3.col
}

但是在linq to entity(3.5)中该语法会有运行时错误。所以需要另辟蹊径:
    解决办法是将需要连接的表全部查出来以List<T>形式存储,然后用linq to sql 的语法对各个泛型集合进行左联接查询。
    虽然会牺牲性能,不过在数据量不是很大的系统中也不失为一个解决办法。

上面这种方法可行,但是效率太低,今天同事发现了个更高效的方法:
只将主表转换为List就可以了。

你可能感兴趣的:(Linq to entity 3.5 左联接问题)