读书人

请问一个三表联合查询的linq语句小弟

发布时间: 2011-12-31 23:50:30 作者: rapoo

请教一个三表联合查询的linq语句,我自己实在写不出来了,谢谢
select id,projectname from projects (项目表)
select id,empName,phone from employees (员工表)

select id,projectid,employeeid,projectRote from project_employee (项目与员工的关系表,projectRote 字段是员工在项目角色)


需要实现如下效果:
传入一个项目ID(16),返回该项目的参与者和在项目中的角色
select empName,phone,projectname,projectrote from projects p,employees e,project_employee pe
where pe.projectid=16 and e.id=pe.employeeid and p.id=16


请问这个用LINQ怎么实现这个语句?谢谢了!

[解决办法]
有没有外键,有外键直接从 project_employee 入手

C# code
var query = from pe in project_employee            where pe.id == 16            select new { pe.employees.empName, pe.projectRote };
[解决办法]
var query=from p in projects join e in employees join pe in project_employee on 条件
where pe.id == 16
select new
{
e.empName
...
};

读书人网 >.NET

热点推荐