【发布时间】:2013-12-11 00:49:55
【问题描述】:
如果调用 executequery() 会返回大量(例如超过 625,000 条)记录,是否会出现 System.OutOfMemoryException?
使用 take() 可以正常工作,例如
var query = breeze.EntityQuery
.from("Biography")
.select("ENTITY_ID, NAME, NICKNAME")
.where("VAL1","==","AL")
.orderBy("ENTITY_ID")
.take(1000);
但是,询问所有记录会导致 System.OutOfMemoryException 错误。
var query = breeze.EntityQuery
.from("Biography")
.select("ENTITY_ID, NAME, NICKNAME")
.where("VAL1","==","AL")
.orderBy("ENTITY_ID");
运行等效的 SQL 大约需要 5 秒才能成功完成。
【问题讨论】:
-
你有什么问题?
-
当遇到 System.OutOfMemoryException 时,将使用 skip() 和 take() 的多个查询的结果组合起来的最佳解决方案是什么?
标签: .net entity-framework breeze entity-framework-6