LINQ包含子列表但有条件

时间:2018-07-21 10:44:31

标签: c# linq

您好,我有以下LINQ查询:

public async Task<DeityViewModel> GetDeityBySlugAsync(string slug)
{
  Deity requestedDeity = await _yeGodsContext
    .Deities
    .AsNoTracking()
    .Include(d => d.Slugs)
    .Include(d => d.Aliases)
    .Include(d => d.Category)
    .Where(d => d.Aliases.Any(a => !a.IsDeleted))
    .FirstOrDefaultAsync(d => d.Slugs.Any(s => s.Name == slug));
  return requestedDeity?.ToDeityViewModel();
}

它从数据库中获取一个Deity实体。该实体具有ICollection<DeityAlias> Aliases { get; set; }属性。

在获得神灵时,我希望包括别名,但仅包括其IsDeleted标志设置为false的别名。

为什么上述方法有效?我很困惑。

0 个答案:

没有答案