加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – LINQ用于检索多级关系数据的查询

发布时间:2020-12-16 03:56:33 所属栏目:asp.Net 来源:网络整理
导读:我刚刚开始使用asp.net mvc并且我想知道如何从from子句中指定的实体获得超过一级深度的关系数据.使用以下域模型作为示例: 博客有很多帖子.帖子有很多评论. 我如何编写LINQ查询以将实体返回到Blog.Posts.Comments级别? 我想出的唯一(不那么优雅)解决方案是
我刚刚开始使用asp.net mvc并且我想知道如何从from子句中指定的实体获得超过一级深度的关系数据.使用以下域模型作为示例:

博客有很多帖子.帖子有很多评论.

我如何编写LINQ查询以将实体返回到Blog.Posts.Comments级别?

我想出的唯一(不那么优雅)解决方案是使用LINQ查询来获取博客和帖子,然后使用foreach来获取评论.

var blog = (from b in _db.BlogSet.Include("Posts")
            select b);

foreach (Post p in blog.Posts)
{
    var comments = (from c in _db.CommentSet
                    where c.PostId = p.Id
                    select c);

    p.Comments = comments;

}

解决方法

A Blog has many posts. Posts have many comments.
How would I write a LINQ query to return entities down to the Blog.Posts.Comments level?

我相信,你可以做到以下几点来实现这个目标:

var blog = (from b in _db.BlogSet.Include("Posts.Comments")
            select b);

在这种情况下,对于每个博客,将提取帖子及其评论.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读