gpt4 book ai didi

c# - Queryable.OrderBy 和 Enumerable.OrderBy 有什么区别?

转载 作者:行者123 更新时间:2023-11-30 22:11:36 25 4
gpt4 key购买 nike

<分区>

假设我有一个 LINQ to SQL(或 EntityFramework)数据上下文(对象上下文)。我想从中查询一些数据并对结果集进行排序。查询看起来像:

using(var dc = new TestDataContext) // = new TestEntities)
{
var query = dc.MyEntities.Where(e => /*my where clause*/)
.OrderBy(/*my sorting field*/)
.ThenBy(/*another sorting field*/);
foreach(var entity in query)
{
//...
}
}

根据不同的参数类型 OrderByThenBy可以使用方法。

  1. Queryable.OrderBy Method Expression<Func<TSource, TKey>>
  2. Enumerable.OrderBy Method Func<TSource, TKey>

DataContext.Log可以看出 Queryable.OrderBy在使用 Enumerable.OrderBy 时将给定的表达式编译成在数据库上执行的 SQL 语句LINQ 实际上是对程序内存中的对象进行排序,即对数据库的查询是在没有排序的情况下执行的...

我可能会遇到哪些其他可能的特性?

此后出现此问题:SO How to make expression treat value type as a reference type?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com