gpt4 book ai didi

c# - 带条件排序的 LINQ OrderBy/ThenBy

转载 作者:行者123 更新时间:2023-11-30 13:26:29 30 4
gpt4 key购买 nike

我正在尝试按日期对列表进行排序,然后按描述名称对列表进行排序,但是我需要所有具有特定描述的元素成为每个日期的顶部元素。

示例:

01-02-2014 "Description A"
01-02-2014 "Description B"
01-02-2014 "Description C"
01-02-2014 "Description D"
01-02-2014 "Description E"

02-02-2014 "Description A"
02-02-2014 "Description B"
02-02-2014 "Description C"
02-02-2014 "Description D"
02-02-2014 "Description E"

我需要它如何排序是按日期和描述,但也包括每个日期内列表顶部的所有 Description B 元素。像这样,

01-02-2014 "Description B" <-- Top (Rest below is still sorted ascending)
01-02-2014 "Description A"
01-02-2014 "Description C"
01-02-2014 "Description D"
01-02-2014 "Description E"

02-02-2014 "Description B" <-- Top (Rest below is still sorted ascending)
02-02-2014 "Description A"
02-02-2014 "Description C"
02-02-2014 "Description D"
02-02-2014 "Description E"

我已经尝试使用 LINQ 来完成此操作,但我不确定它是否可以作为单个查询来完成。

return ListOfItems.OrderByDescending(x => x.Date).ThenBy(x => x.Type)

最佳答案

这一系列排序语句将按照您的示例显示的方式对其进行排序

return ListOfItems.OrderBy(x => x.Date)
.ThenByDescending(x => x.Type == "Description B")
.ThenBy(x => x.Type);

关于c# - 带条件排序的 LINQ OrderBy/ThenBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22154341/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com