考虑简单类
public class Data
{
public DateTime Date;
public object Content;
}
现在我有一个 IEnumerable<Data>
称为 datas
我希望 Linq 将每天的旧项目分类。这样如果有同一天的项目,我只对当天的最新项目感兴趣。
这可以用 Linq 实现吗?
最佳答案
这里是你如何做到的:
var result =
datas
//Group by day (we don't include time here)
.GroupBy(x => x.Date.Date)
//For each group (day), get most recent item (we include time here)
.Select(g => g.OrderByDescending(x => x.Date).First())
.ToList();
为了提高可读性,您还可以在 Select
语句中使用 x.TimeOfDay
而不是 x.Date
。
关于c# - 选择每天的最新条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37498620/