0

当我在带有 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

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

4

1 回答 1

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

改用Contains方法 - 它将转换为IN实体框架生成的 SQL 查询中的子句。

于 2013-04-12T08:25:47.360 回答