实体框架:利用带属性的 IN 子句
在实体框架中,可以使用 IN 子句基于各种字段过滤实体:多种方式,包括 ANY 和 CONTAINS 方法。但是,对于直接的类似 SQL IN 子句,可以采用另一种方法。
类似 SQL IN 子句用法
考虑以下 SQL 查询:
SELECT * FROM Licenses WHERE license = 1 AND number IN (1,2,3,45,99)
要在实体框架中复制此查询,请定义一个表示要包含在 IN 子句中的值的数组。例如:
int[] ids = new int[]{1,2,3,45,99};
然后,按如下方式修改 Entity Framework 查询:
using (DatabaseEntities db = new DatabaseEntities ()) { return db.Licenses.Where( i => i.license == mylicense && ids.Contains(i.number) ).ToList(); }
通过对指定数组调用 Contains 方法,Entity Framework 可以根据以下条件有效过滤 Licenses 表:所需的 IN 子句标准。
以上是如何使用实体框架属性复制 SQL 的 IN 子句?的详细内容。更多信息请关注PHP中文网其他相关文章!