linq取出数据时候如果其中name项数据相同选择日期marktime比较新的取出
可以使用LINQ的GroupBy和Max方法来实现这个需求。假设数据源是一个名为data的List对象,包含了多个对象,每个对象有name和marktime两个属性。
var result = data.GroupBy(d => d.name)
.Select(g => g.OrderByDescending(d => d.marktime).First())
.ToList();
首先,使用GroupBy方法按照name进行分组。然后,对于每个分组,使用OrderByDescending方法按照marktime进行降序排序,再使用First方法取出排序后的第一个对象。最后,使用ToList方法将结果转换为List对象。
这样,result中就包含了每个name对应的marktime最新的对象。
原文地址: http://www.cveoy.top/t/topic/it7p 著作权归作者所有。请勿转载和采集!