无法使用内存中列表查找实体框架

本文关键字:列表 查找 实体 框架 内存 | 更新日期: 2023-09-27 18:20:54

我正在使用内存中的列表在实体数据库中查找,但我得到了以下错误:

无法创建类型为System.Collections.Generic.List"1"的常数值。此上下文中仅支持基元类型(如Int32、String和Guid)。

我使用的代码是:

dgv.DataSource = (from x in Helper.Ctx.Planner where myList.Contains(x.Customer) select x).Take(100);

我研究了这个问题,发现它建议我先使用ToList()检索所有内容,但数据库很大,每次通过网络检索整个内容需要几分钟时间。

我使用的是EF4.1和VS 2010。

有什么解决方案吗?!

无法使用内存中列表查找实体框架

比较Customer的Pk键,而不是完整对象。

myList.Select(x => x.Id).Contains(x.Customer.Id)