如何在LINQ to Entity中使用类似Contains的功能

本文关键字:Contains 功能 LINQ to Entity | 更新日期: 2023-09-27 18:22:02

我有这个查询:

int[] listId = {15, 56, 89, 24}
var queryError = from error in db.errors
                 where listId.Contains(error.battery_id)                                    
                 select error;
 List<error> bufferErrorList = new List<error>();
 bufferErrorList = queryError.ToList();

但我收到错误信息:

LINQ to Entities无法识别方法«Boolean包含(System.Object)»,因此无法翻译。

如何获取结果?

谢谢!

如何在LINQ to Entity中使用类似Contains的功能

您是否尝试过将对象强制转换为int?

where listId.Contains((int)error.battery_id)  

这里已经询问过

试试这样的东西:

int[] listId = {15, 56, 89, 24}
var queryError = from error in db.errors
                 where listId.Any(x => x == error.battery_id)                                    
                 select error;
 List<error> bufferErrorList = new List<error>();
 bufferErrorList = queryError.ToList();