简体   繁体   English

Entity Framework Core + Linq:如何获得具有最大值的整个实体? 寻找更优雅的解决方案

[英]Entity Framwork Core + Linq: How do I get the entire entity that has the max value? Looking for a more elegant solution

This is what I have so far:这是我到目前为止:

var TEST = await context.ProcessRevision.FirstOrDefaultAsync(i => i.ProcessRevId == (context.ProcessRevision.Max(i => i.ProcessRevId)));

I am unsure whether this is a good solution or if I could do something a little more elegant with less processing.我不确定这是否是一个好的解决方案,或者我是否可以用更少的处理做一些更优雅的事情。

Any suggestions?有什么建议?

Just sort it in descending order and get the first entity.只需按降序对其进行排序并获得第一个实体。 Most likely this is EF context?这很可能是 EF 上下文? So it should be translated into a select top (1) with order by ... desc .所以它应该被翻译成一个select top (1)order by ... desc

var test = await context.ProcessRevision.OrderByDescending(r => r.ProcessRevId).FirstOrDefaultAsync();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM