使用 Lambda 语法将 SQL 子查询转换为 EF 查询
本文关键字:查询 转换 EF SQL Lambda 语法 使用 | 更新日期: 2023-09-27 18:33:46
这是SQL查询,,,我有两个tables, one is Categories and other Sub Categories
,,,我想使用inner query(Category table) and that value pass to outer query(Sub categories table)
如何使用lambda表达式将其转换为实体框架..?
select *
from DC_System_SubCategories
where CatID = (select max(CatID)
from DC_System_Categories)
假设DCSystemSubcategories
是具有适当属性的IEnumerable<DCSystemSubcategory>
,并且DCSystemCategories
是相关的IEnumerable<DCSystemCategory>
:
var subcategoriesWithMaxCatId = DCSystemSubcategories
Where(x=>x.CatID ==
DCSystemCategories.Max(sc=>sc.CatID))
但是存在稳定性问题,这取决于你如何填充DCSystemSubcategories
,所以期望做一些其他的逻辑;此外,如果CatID可以重复,结果是不确定的。
编辑:因为马格努斯在评论中指出了优越的转换。为了说明我们忽略的问题中的细节......