ThenBy()在特定条件下不工作

本文关键字:条件下 工作 ThenBy | 更新日期: 2023-09-27 17:58:56

假设我有这样一个类的列表(经过编辑,相当于原始代码):

public class Foo
{
    public FooEnum enum;
    public DateTime dt;
    enum FooEnum
    {
        prop1 = 0,
        prop2 = 1
    }
}

现在,如果我们有一个这个类的列表,让我们称之为_fooList,它包含两个Foo对象,其中一个对象包含dt01/01/01enumprop2,另一个对象按顺序包含dt01/01/01enumprop1。现在,如果我先OrderByDateTime,这会使它保持不变,但当我按FooEnum排序时,它仍然保持不变,即使包含prop1Foo应该是第一个。对此有什么解释吗?

(注意:这是我的问题的一个真正的总结版本)。

ThenBy()在特定条件下不工作

试试这个,告诉我它是否有效:

_fooList = _fooList.OrderBy(f => f.someString).ThenBy(f => f.someInt).ToList();