2

例如,将

products.Where(p => p.LastModifiedOn > someDate)

总是以相同的顺序返回产品(不管它是如何订购的,只要我每次调用相同的代码时都是一致的)?或者我应该添加.OrderBy()方法来确保?

4

2 回答 2

5

或者我应该添加 .OrderBy() 方法来确保?

是的,你应该。例如,它在内部翻译为底层数据源语言, Select * from table where ...并且不能保证其返回值始终保持相同的顺序。

您可能会看到这个问题:SELECT 查询是否总是以相同的顺序返回行?具有聚集索引的表

于 2013-04-11T11:46:31.270 回答
1

LINQ to SQL 不保留顺序。既然您提到了 EntityFramework,这就是您问题的答案。但是,您应该注意,LINQ to Objects 确实保留了顺序 - 与输入可枚举的顺序相同。

于 2013-04-11T11:48:08.880 回答