如何指定包含在 entity framework 中的位置
How To specify Where in Include in entity framework
我遇到过很多次这个问题,我想知道处理 Include 中 Where 子句的最佳方法。这是我的示例代码
IEnumerable<Data.StoreMenu> dataStoreMenus = _context.StoreMenus
.Include(sm => sm.MenuCategories.Where(x => !x.IsDeleted))
.Where(sm => sm.StoreId == storeId && !sm.IsDeleted).ToList();
场景是我有一个菜单,而 Menu 有多个菜单类别。菜单和菜单类别都有一个标志来标记已删除的项目。现在我只想检索未删除的菜单以及未删除的菜单类别。
创建子查询:
var result = _context.StoreMenus
.Where(sm => sm.StoreID == storeId && !sm.IsDeleted)
.Select(sm=>
new { Menu=sm, MenuCats = sm.MenuCategories.Where(smc => !smc.IsDeleted) })
.ToList();
可能想看看类似的东西:here
我遇到过很多次这个问题,我想知道处理 Include 中 Where 子句的最佳方法。这是我的示例代码
IEnumerable<Data.StoreMenu> dataStoreMenus = _context.StoreMenus
.Include(sm => sm.MenuCategories.Where(x => !x.IsDeleted))
.Where(sm => sm.StoreId == storeId && !sm.IsDeleted).ToList();
场景是我有一个菜单,而 Menu 有多个菜单类别。菜单和菜单类别都有一个标志来标记已删除的项目。现在我只想检索未删除的菜单以及未删除的菜单类别。
创建子查询:
var result = _context.StoreMenus
.Where(sm => sm.StoreID == storeId && !sm.IsDeleted)
.Select(sm=>
new { Menu=sm, MenuCats = sm.MenuCategories.Where(smc => !smc.IsDeleted) })
.ToList();
可能想看看类似的东西:here