例如,
products.Where(p => p.LastModifiedOn > someDate)
总是以相同的顺序返回产品(无论它是如何订购的,只要每次调用相同的代码时它都是一致的)?或者我应该添加.OrderBy()
方法以确保?
答案 0 :(得分:5)
或者我应该添加.OrderBy()方法以确保?
是你应该。它在内部转换为底层数据源语言,例如Select * from table where ...
,并且不保证其返回值始终保持相同的顺序。
您可能会看到以下问题:Does a SELECT query always return rows in the same order? Table with clustered index
答案 1 :(得分:1)
LINQ to SQL不保留顺序。既然你提到了EntityFramework,那就是你问题的答案。但是,您应该注意,LINQ to Objects确实保留了顺序 - 与输入可枚举的顺序相同。