You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Entity Framework和ASP.NET Core查询含未审核图片的帖子

嘿,我来帮你搞定这个EF Core查询需求!根据你给出的Post和Image模型定义,我分两种常见的业务场景给你写对应的实现代码,你可以按需选择:

场景1:筛选出至少包含一张未审核图片的帖子

如果你需要的是只要帖子里有任何一张图片的Approved为false,就把这个帖子捞出来,用下面的LINQ查询:

var postsWithUnapprovedImages = _context.Posts
    .Where(p => p.Images.Any(img => !img.Approved))
    .ToList();

这里用Any()方法判断帖子的图片集合中是否存在符合条件的元素,EF Core会把这个表达式转换成对应的SQL语句,高效完成筛选。

场景2:筛选出所有图片都未审核的帖子

如果你的需求是帖子里的每一张图片Approved都必须是false,那就用All()方法来实现:

var postsWithAllUnapprovedImages = _context.Posts
    .Where(p => p.Images.All(img => !img.Approved))
    .ToList();

All()会验证集合里的所有元素都满足!img.Approved的条件,只有完全符合的帖子才会被筛选出来。

额外提示

如果你查询后需要直接访问帖子关联的图片数据,记得加上Include()来显式加载导航属性,避免懒加载可能带来的N+1查询性能问题:

var postsWithUnapprovedImages = _context.Posts
    .Include(p => p.Images) // 显式加载关联的Image集合
    .Where(p => p.Images.Any(img => !img.Approved))
    .ToList();

内容的提问来源于stack exchange,提问作者David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:19:11