2012-01-10 84 views
0

我正尝试在linq中应用自连接。 sql语句如下:使用lambda运算符将以下sql语句转换为linq

TableEmployee(ID,EmployeeName,EmployeeManager)//表结构

select a.EmployeeName from TableEmployee a 
inner join TableEmployee b on a.EmployeeManager=b.EmployeeName 

Basicaly我要确保,如果EmployeeManager在表中。请使用lambda运算符将其转换为linq。

+0

你能说清楚'EmployeeManager'是什么意思吗?一个给定的员工是否有经理或给定的员工是经理还是其他人? – Eranga 2012-01-10 03:58:40

回答

0

您所查询的,它应该是

List<TableEmployee> list = (from em in TableEmployee 
join en in TableEmployee on em.EmployeeManager equals en.EmployeeName 
select em).ToList(); 

你可以试试这个与拉姆达?

TableEmployee.Where(x => x.EmployeeManager == x.EmployeeName).ToList();