如何使用Entity框架检索插槽中的数据?

时间:2013-12-26 12:17:21

标签: c# entity-framework linq-to-entities

我有一个名为Material的表,它包含近450000条记录。 我想使用实体框架检索所有这些记录,但它是 花更多时间选择所有记录。有时几分钟后 我得到了Out of memory exception

有人可以帮我一次检索100000条记录, 处理它们,然后使用Entity framework从数据库中检索下一条记录。

1 个答案:

答案 0 :(得分:1)

我想你的意思是你希望在通过EF检索数据时有一个分页机制。我会使用repository来控制整个数据访问,并提供更通用的分页机制。通过“分页”,我们的意思是将在包含特定数量结果的页面中组织返回结果。

最后,您可以使用具有SkipTake子句的查询。例如:

IQueryable query = ... //form the actual query which is not executed yet
IQueryable pagedQuery = query.Skip(pagesToSkip*recordsPerPage).Take(recordsPerPage); //This is the paged query returning the results of one page

希望我帮忙!