首页 > 解决方案 > 如何根据嵌套列表项匹配从数据库中选择实体?

问题描述

我有一个包含 列表的 DbSet Item,现在我想Item根据其嵌套列表项匹配从数据库中搜索一个。

项目型号

public int ItemID{ get; set; }
public string Cover { get; set; }
public List<SlideModel> Slides { get; set; }

幻灯片模型

public int SlideID{ get; set; }
public int ItemID{ get; set; }
public string Slide{ get; set; }

现在我将传递一个搜索字符串,Slide它将搜索其中包含的人Item并返回SlideList<SlideModel>Item

item = await context.Items
    .Include(i => i.Slides)
    .Where(...todo-maybe...)
    .FirstOrDefaultAsync();

我应该如何编写查询方法来获取item基于slide

标签: linqentity-framework-core

解决方案


这就是你想要的东西?希望能帮到你,我的朋友:))

string inputSlide = "abc";

item = await context.Items
    .Include(i => i.Slides)
    .Where(i => i.Slides.Any(i => i.Slide.ToLower() == inputSlide.ToLower()))
    .FirstOrDefaultAsync();

推荐阅读