在 EF Core 中,如果查询查询外键表的内容
实体
public class Blog { public int BlogId { get; set; } public string Url { get; set; } public List<Post> Posts { get; set; } // 集合导航属性 public List<Comment> Comments { get; set; } // 集合导航属性 } public class Post { public int PostId { get; set; } public string Title { get; set; } // 其他属性... public List<Author> Authors { get; set; } } public class Comment { public int CommentId { get; set; } public string content { get; set; } // 其他属性... public int PostId { get; set; } public Post Post { get; set; } } public class Author { // 其他属性... public int PostId { get; set; } public Post Post { get; set; } }
ef core中查询外键属性
-
在 Entity Framework Core (EF Core) 中,如果两个实体涉及到外键连接,查询的时候默认只会查自身而不会去查询外键表的内容。
如果想要让查询结果包含外键实体,可以使用Include
方法来让查询结果包含外键实体。 -
假设我要查询上面的Blog,同时其关联的表也进行查询,则linq查询语句如下:
var blogWithDetails = dbContext.Blogs .Include(b => b.Posts) .ThenInclude(p => p.Authors) .Include(b => b.Comments) .FirstOrDefault(b => b.BlogId == specificBlogId);
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战