选择“日期”为特定日期的对象列表的“最大 Z”属性
本文关键字:日期 最大 属性 列表 选择 对象 | 更新日期: 2023-09-27 18:36:11
我有一个对象,它有一个日期属性和一个Z属性。
class myClass
{
DateTime theDate;
int Z =0;
}
我基于 SQL 查询创建这些对象的列表然后我需要为特定日期选择最大 Z 值。
public int GetMaxZ(List<myClass> myClasses, DateTime date)
{
int z=0;
z = select Z from c in myClasses
where c.theDate=date
//Select the Max somehow
return z;
}
显然,该代码不允许选择特定日期的最高Z
我曾想过选择所有相同的日期,然后遍历这些日期,但这听起来不像是一个可靠的做法。 有什么帮助吗?
myClasses.Where(x => x.theDate == date)
.Select(x => x.Z)
.OrderByDescending(x => x)
.FirstOrDefault();
首先
,该代码甚至无法编译,因为选择是IQueryable,但您尝试用作int。
但是,为了你的运气,因为它是一个IQueryable,你可以使用Max():
public int GetMaxZ(List<myClass> myClasses, DateTime date)
{
var z = from c in myClasses
where c.theDate=date
select Z;
return z.Max();
}