-2

可能重复:
IQueryable<T> 和 IEnumerable<T> 有什么区别?

我阅读了很多关于 IQueryable 的内容,但我仍然不明白什么时候使用 IQueryableProvider 的方法以及使用什么方法。

我的英语不是很完美,所以理解那篇文章对我来说很重要。http://blogs.msdn.com/b/mattwar/archive/2007/07/30/linq-building-an-iqueryable-provider-part-i.aspx

*不要告诉我将 IEnumerable 用于集合,将 IQueryable 用于 sql,因为我们可以将每个用于集合和 sql。

4

2 回答 2

3

AnIEnumerable是可以迭代的集合的最简单接口,就像在foreach循环中一样。

AnIQueryable是一个查询构建器,它包含一个 LINQ 查询,可以添加到该查询中,直到您对查询执行某些操作以强制它执行并返回一个集合。

于 2012-10-06T09:43:04.930 回答
1

IQueriable 提供针对未指定数据类型的特定数据源评估查询的功能。而 IEnumerable 只允许循环遍历它们。

所以,总而言之,

Queryable 可让您查询数据

Enumerable 允许您遍历数据的每个元素

于 2012-10-06T09:21:09.233 回答