首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在调用ToList()方法时调用数据库

问在调用ToList()方法时调用数据库
EN

Stack Overflow用户
提问于 2012-05-07 17:24:47
回答 1查看 705关注 0票数 1

在我的存储库中,我使用ToList()方法返回不同的列表。

问题是,当我对返回的结果(即List类型)运行更多的LINQ时,它也会为此生成一个数据库调用。显然,第二个linq调用是纯LINQ to Entity,不应该调用数据库。请看下面我在做什么。

代码语言:javascript
复制
List<User> us = userRepository.GetMany(u => filterStatusIds.Contains(u.UserStatus.Id));
if (!string.IsNullOrEmpty(name))
us = (from u in us
      where u.DisplayName.Contains(name)
      select u).ToList(); // this ToList should not call database

有什么帮助或想法来停止这个额外的数据库调用吗?

EN

回答 1

Stack Overflow用户

发布于 2012-05-07 17:28:07

从仓库返回IEnumerable<User>或IQueryable<T>,则不会查询数据库。

在ToList()之后,只有第二个调用会这样做。

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

https://stackoverflow.com/questions/10479626

复制
相关文章

相似问题

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