可能的重复:
LINQ:如何对集合中所有对象的属性执行 .Max() 并返回具有最大值的对象 https://stackoverflow.com/questions/1101841/linq-how-to-perform-max-on-a-property-of-all-objects-in-a-collection-and-ret
我有以下课程:
class Product
{
public string ProductName { get; set; }
public DateTime ActivationDate { get; set; }
}
然后我创建并填充一个List<Product>
我想得到ProductName
来自Product
与最新的ActivationDate
.
Product.Where(m => m.ActivationDate == Max(m.ActivationDate)).Select(n => n.ProductName)
Product.Max(m => m.ActivationDate).Select(n => n.ProductName)
但机器人方法不起作用。有人知道完成这项任务的方法吗?
You can OrderByDescending
the List<Product>
在 ActivationDate 字段上,然后采取FirstOrDefault()
Product.OrderByDescending(p => p.ActivationDate).FirstOrDefault();
对于更简单的版本,有一个扩展方法
MaxBy http://code.google.com/p/morelinq/source/browse/MoreLinq/MaxBy.cs
Product.MaxBy(p => p.ActivationDate);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)