首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用带和不带IQueryable ()的IQueryable

使用带和不带IQueryable ()的IQueryable
EN

Stack Overflow用户
提问于 2015-05-14 11:39:04
回答 1查看 108关注 0票数 0

我想知道当我使用IQueryable和不带AsQueryable()时会发生什么。下面是一个示例:

代码语言:javascript
复制
public partial class Book
{
.......
public Nullable<System.DateTime> CheckoutDate{get; set;}

} 

在将数据返回到应用程序服务器之前,我需要筛选来自SQL server的数据。,我需要返回最近签出的书籍,而不是输入的日期。我应该用哪一种?

一个。

代码语言:javascript
复制
IQueryable<Book> books = db.Books;
books = books.Where(b => b.CheckoutDate >= date);

B.

代码语言:javascript
复制
IQueryable<Book> books = db.Books.ToList().AsQueryable();
books = books.Where(b => b.CheckoutDate >= date);

基本上,我想知道上述两种方案的区别是什么。他们是否基于类似的理由工作?它们返回相同的值吗?

EN

回答 1

Stack Overflow用户

发布于 2015-05-14 11:43:03

使用B选项,基本上是从数据库中检索每本书,并过滤内存中的数据。

选项具有更高的性能,因为它过滤数据库中的数据,并只返回与查询匹配的行。

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

https://stackoverflow.com/questions/30236434

复制
相关文章

相似问题

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