用C#对列表进行排序
本文关键字:排序 列表 | 更新日期: 2023-09-27 17:59:50
public class BatchProcess
{
public string process { get; set; }
public DateTime runtime { get; set; }
public bool running { get; set; }
}
所以我有一份这些人的名单——List<BatchProcess> list
。
我该如何根据每一列进行排序?我听说我可以用LINQ做这件事,但我用LINQ太糟糕了。那看起来怎么样?
谢谢。
您可以通过运行时进行排序,例如:
var orderedByRuntime = list.OrderBy(p => p.runtime);
如果你想按"流程"降序排序,你可以使用:
var orderedByProcessDesc = list.OrderByDecending(p => p.process);
process
排序的列表的示例。
var listByProcess = list.OrderBy(bp => bp.process);
使用OrderBy:
var sortedList = list.OrderBy(p => p.runtime).ToList();
如果你想按所有它们进行排序,就像你所要求的那样,你可以执行以下
var sorted = list.OrderBy(p => p.process).ThenBy(r => r.runtime);