LINQ OrderBy()在List上失败

时间:2017-09-28 22:43:33

标签: c# linq

我有一个非常简单的代码。执行后,列表rArray保持不变。它应该根据Level进行排序,但事实并非如此。有任何想法吗?请帮忙。谢谢。这是在Microsoft C#WPF中。

For multiple JAR files, separate the jar-files with semicolons, as follows:

javac -classpath jar-file1;jar-file2;jar-file3 java-file
Some rules to note:

On UNIX systems use a colon instead of a semicolon.`

2 个答案:

答案 0 :(得分:3)

rArray.OrderBy(RecordList => RecordList.Level)

不会更改您的阵列。它将创建新的IEnumerable集合。 如果要将其保存到数组,则必须执行smtg,如

rArray = rArray.OrderBy(RecordList => RecordList.Level).ToList()

答案 1 :(得分:-1)

我通过以下方式解决了这个问题。也就是说,OrderBy方法返回一些东西而不是直接改变源。

        IOrderedEnumerable<RecordList> aList = rArray.OrderBy(RecordList => RecordList.Level);
        rArray = aList.ToList<RecordList>();