【发布时间】:2019-07-31 18:41:08
【问题描述】:
我必须从数据库中收集数据,其中删除的记录并未真正删除,而是被标记(有一个“IsActive”位列,其中已删除的项目保存值为 0)。
我正在使用 Entity Framework Core,我想获取货币列表(欧元、美元、...)。每种货币都与 1-n 个国家/地区相关联,因此这里有 3 个列在起作用:
- 货币(ID、姓名、...)
- CurrencyCountry(CurrencyId、CountryNumericCode)
- 国家(数字代码、姓名、...)
我想在一次 ef 调用中获取所有货币及其国家/地区;所以我确实有类似的东西:
_ctx.Currency
.Where(c => c.IsActive)
.Include(c => c.CurrencyCountry)
.ThenInclude(cc => cc.CountryNumericCodeNavigation)
.ToList();
这几乎可以工作;唯一的问题是我需要指定我只想要活动的“CurrencyCountries”。所以我想在“Include”之后和“ThenInclude”之前添加一个“Where IsActive == true”,但看起来无法完成。
还有其他方法可以完成我想做的事情吗?
谢谢!
【问题讨论】:
-
我想你可能需要在某个地方做任何事情
标签: entity-framework asp.net-core .net-core hyperlink