Ale*_*ich 7 .net c# sql linq entity-framework-6
尝试获取列的最大日期时间值的记录ReceivedDateTime
,但是数据集应该由某些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)
{
}
}
Run Code Online (Sandbox Code Playgroud)
有没有更漂亮、更简单、更短的实现、符号?谢谢!
您可以使用如下简化OrderByDescending
:
using (var db = new SystemEntities())
{
var record = db.Table.Where(p => p.Id == Id).OrderByDescending(x => x.ReceivedDateTime).FirstOrDefault();
if(record != null){}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12471 次 |
最近记录: |