如果在带有OR条件的WHERE子句中有一个参数数组,如何创建有效的Linq-to-Entities查询?数组长度可以是任何值。
例如:来自员工 - >返回EmployeeID为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 :(得分:0)
Dim query = From emp In _context.Employees
Where employeeArray.Contains(emp.EmployeeID)
Select emp
使用Contains
方法 - 它将在Entity Framework生成的SQL查询中转换为IN
子句。