3

context.EntitySet.AsEnumerable().OrderBy()返回一个IOrderedEnumerable保证是有序的,但看起来排序是在客户端完成的。

context.EntitySet.OrderBy().AsEnumerable()将表达式保留为 anIOrderedQueryable直到它最终变为IEnumerable. 我相信在这种情况下排序是由数据库完成的,这是更可取的。在一些基本测试中,输出似乎仍然是有序的。即使IOrderedQueryable.AsEnumerable()只返回一个,是否也能保证订购IEnumerable

4

1 回答 1

3

是的,这是有保证的。AsEnumerable只是一个简单的只进包装器(IOrderedEnumerable实际上只是一个标记接口)。

于 2012-09-07T12:19:15.237 回答