如何在多个表中实现LINQ查询?新年好
本帖最后由 chilli6519 于 2013-02-19 08:33:32 编辑
有两个表对应不同的实体类
一个表对应部门,包括部门编号和部门名称,编号为GUID
另外一个表对应人员和部门的关系,一个人可以有多个部门,人员编号为GUID
现在希望通过人员编号,得到改人员所属的所有部门信息,
var query = from dp in db.部门表
join p in db.部门_YY所属表
on dp.ID equals p.部门ID
select dp;
return query.Select(a => new 部门
{
ID = a.ID,
名称 = a.名称,
上级部门ID = a.上级部门ID,
创建人ID=a.添加人ID,
创建时间=a.添加时间
});
希望如果人员和部门的对应关系为空,则查询所有,请问该如何处理LINQ?
谢谢
------解决方案--------------------参考http://blog.csdn.net/q107770540/article/details/7282005
------解决方案--------------------本帖最后由 q107770540 于 2013-02-19 13:57:59 编辑
var query = from dp in db.部门表
join p in db.部门_YY所属表
on dp.ID equals p.部门ID into leftJoin
from p in ledtJoin.DefaultIfEmpty()
select new 部门
{
ID = dp.ID,
部门ID=p==null?0:p.部门ID,
名称 = dp.名称,