首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ObjectContext.ExecuteStoreQuery对结果集进行迭代吗?

ObjectContext.ExecuteStoreQuery对结果集进行迭代吗?
EN

Stack Overflow用户
提问于 2012-03-27 16:48:54
回答 1查看 2.2K关注 0票数 0

我正在使用ObjectContext.ExecuteStoreQuery返回一个实体列表,大约30K。

我需要提高性能,所以我将“选择”我真正需要的4个属性,而不是总共20个属性。

我可以用这4个属性创建一个DTO,并将它传递给ObjectContext.ExecuteStoreQuery,但是我更喜欢使用DataReader,在30K上迭代,然后构建我的列表。

我尝试了这两种选择,这“似乎”他们采取了相同的时间(没有衡量)。我的问题是-does ObjectContext.ExecuteStoreQuery对结果集进行迭代,就像我手动处理DataReader一样?

我在MSDN中发现了这一点,但并没有真正回答我的问题。谢谢。

调用ExecuteStoreQuery方法等同于调用DbCommand类的ExecuteReader方法,只有ExecuteStoreQuery返回实体,ExecuteReader返回DbDataReader.

中的属性值。

EN

回答 1

Stack Overflow用户

发布于 2012-03-27 16:53:42

如果您的意思是,它是否在每次迭代中命中数据库,那么(通过文档)它将把整个结果集加载到实体中。但是,一旦加载,它将遍历内存中存储的数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9894029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档