LINQ 获取指定 ID 数据,相同 Name 时取最新日期记录
可以使用以下代码使用 LINQ 来实现该需求:
var selectedData = data
.GroupBy(x => x.Name) // 按照 Name 分组
.Select(g => g.OrderByDescending(x => x.MarkTime).First()) // 对每个分组按照 MarkTime 降序排序并取第一个
.Where(x => x.ID == specifiedID) // 筛选指定 ID 的数据
.ToList();
其中,data 是原始数据列表,specifiedID 是指定的 ID。
这段代码会先按照 Name 分组,然后对每个分组按照 MarkTime 降序排序,并取最新的一条数据。最后,再通过 Where 筛选指定 ID 的数据,将结果转换为列表。
原文地址: https://www.cveoy.top/t/topic/qbLJ 著作权归作者所有。请勿转载和采集!