gpt4 book ai didi

c# - LINQ - 在父子层次结构中全选

转载 作者:行者123 更新时间:2023-11-30 17:13:29 25 4
gpt4 key购买 nike

我想知道是否有一种巧妙的方法可以做到这一点,即不使用任何类型的 while 循环或类似循环,最好是将 Linq to Entities 作为单个 SQL 往返运行,同时也针对 Linq To对象。

我有一个实体 - Forum - 存在父子关系。也就是说,一个 Forum 可能(或者在顶层的情况下,可能没有)有一个 ParentForum,并且可能有许多 ChildForums论坛 然后包含许多帖子

我想要的是一种从 Forums 树中获取所有 Posts 的方法 - 即有问题的 Forum,以及所有的 child 、孙子等。我事先不知道有问题的论坛可能有多少个子级别。

(注意 - 我知道这个例子不一定是一个有值(value)的用例,但论坛对象模型是大多数人熟悉的一个,因此作为一个通用的和可访问的前提而不是我的实际领域模型。 )

最佳答案

一种可能的方法是,如果您的实际数据表是使用左/右树存储的(这里的示例:http://www.sitepoint.com/hierarchical-data-database-2/。请注意,该示例是在 MySQL/PHP 中,但实现起来很简单)。使用此功能,您可以找出所有属于 parent 的左/右值范围内的论坛,并且鉴于此,您可以检索论坛 ID 为 IN 这些论坛 ID 的所有帖子。

关于c# - LINQ - 在父子层次结构中全选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9664319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com