linq - LINQ 中的 OrderBy 如何工作(在幕后)?

标签 linq sql-order-by

我已经知道 LINQ 通过评估表达式并通过它们一个一个地迭代(有点像管道)来工作,但是有一些操作,如 OrderBy需要缓冲,因为排序需要一次分析所有数据来进行排序。
我很想知道这些数据在幕后如何在 LINQ 中缓冲。
如果有人能指出我的文章或解释,我将不胜感激。
谢谢

最佳答案

由 LINQ 提供程序来实现。某些提供程序(例如,LINQ to SQL、LINQ to Entities)将音译为 SQL OrderBy。其他(LINQ to Objects)将在客户端上排序。 LINQ 真正做的就是调用一个名为 OrderBy 或 OrderByDesc 的方法。

关于linq - LINQ 中的 OrderBy 如何工作(在幕后)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1018484/

相关文章:

LINQ 查询失败,变量 ormlite 可为空

c# - 将集合转换为字符串的最佳方法

mysql - 多个 ORDER BY

SQLITE 按数字而非字母顺序

MySQL 排序 : why is "5x" after "11x"?

mysql - 按两列对 MySQL 表排序

mysql - 按主键搜索,然后排序

linq - 如何让 LINQ 在 SQL Server 中执行 CAST()?

c# - 实例化空 IQueryable 以与 Linq to sql 一起使用

linq - RavenDb:检查 List<string> 是否包含另一个 List<string> 中的任何内容