【发布时间】:2017-11-20 23:51:55
【问题描述】:
尝试获取 ReceivedDateTime 列的最大 datetime 值的记录,但是数据集应由某些 Id 列进行预过滤(不是唯一的)。以这种方式解决:
using (var db = new SystemEntities())
{
var records = db.Table.Where(p => p.Id == Id);
var record = records.Where(p => p.ReceivedDateTime == records.Max(r => r.ReceivedDateTime)).FirstOrDefault();
if(record != null)
{
}
}
有没有更漂亮、更简单、更短的实现、符号?谢谢!
【问题讨论】:
-
如果有平局怎么办?
-
@GertArnold,“领带”?
-
是的,两条记录,相同的 ID,相同的日期。
-
@GertArnold 不可能 - 它是日期时间,保存当前日期时间和 id,不能同时出现。
标签: c# sql .net linq entity-framework-6