2013-04-12 22 views
0

当OR条件的WHERE子句中有一个参数数组时,如何创建高效的Linq-to-Entities查询?数组长度可以是任何东西。Linq to Entities查询WHERE条件的数组

例如:从员工 - >返回拥有雇员所有雇员1,2或3

这样做将是笨的办法:

For index = 0 To employeeArray.Lenght-1 
     FindID = employeeArray(index) 
     Dim query = From emp In _context.Employees 
        Where emp.EmployeeID = FindID 
        Select emp 
Next 

我怎样才能有效地实现这一目标?

回答

0
Dim query = From emp In _context.Employees 
      Where employeeArray.Contains(emp.EmployeeID) 
      Select emp 

使用Contains方法,而不是 - 它会转化成实体框架生成的SQL查询中IN条款。

+0

是的,谢谢你的快速回复。 – Nuts