使用LINQ,我希望在我的收藏顶部放置符合特定条件的项目。我试过了
myCollection.OrderBy(m => m.Foo == "Bar" ? 0 : 1);
但是我没有运气。有没有人有任何想法为什么这不起作用?
提前谢谢。
答案 0 :(得分:6)
OrderBy()
和其他LINQ方法不会修改它们被调用的集合;相反,他们返回一个新的集合。
答案 1 :(得分:1)
所有LINQ“运算符”,如Select,OrderBy等,不更改它们被调用的集合,但返回一个新集合!
答案 2 :(得分:1)
如果您的收藏品是List<T>,请查看List<T>.Sort方法。或者,如果您正在处理数组,请使用Array.Sort方法。这些方法将对集合进行排序。