我只是想知道为什么有一个IQueryable<T>
没有通用功能的版本?
问问题
1789 次
2 回答
5
泛型
IQueryable<T>
是您在方法签名等中最常使用的一种。非泛型的IQueryable
存在主要是为了给你一个弱类型的入口点,主要用于动态查询构建场景。
作者:来自LINQ 的 Matt Warren:构建 IQueryable 提供程序 - 第一部分
IQueryable<T>
你应该在任何可能的地方使用泛型。
于 2013-08-30T14:39:29.867 回答
1
我想这与 Jon Skeet在 IEnumerable 和 IEnumerable<T> 之间的差异中给出的原因相同 ?, 以允许在foreach
循环中使用。IQuerable
可以转换为IEnumerable
,而IQueryable<T>
不会。
另请参阅 Marcin 关于在动态查询构建场景中使用的回答。
于 2013-08-30T14:13:49.160 回答