使用 EntityFramework 4。我有一个EntityCollection<SomeEntity> currentEntities~500k 实体和一个List<SomeEntity> importedEntities也有 ~500k 记录。我想要列出所有currentEntities不存在的记录的列表importedEntities。
调用currentEntities.Select(x => x.ID).Except(importedEntities.Select(x => x.ID))以获取出现记录的唯一 ID 会导致 a System.OutOfMemoryException,因为它显然会将所有实体加载到内存中。
调用currentEntities.Where(x => !importedEntities.Any(y => y.ID == x.ID))失败并显示NotSupportedException(“在此上下文中仅支持原始类型('例如 Int32、String 和 Guid')”)。
currentEntities在 SQL Server 2008 R2 数据库上,而importedEntities在内存中。
这在 L2E 中甚至可能吗?