【问题标题】:Get all children of same object by Entity Framework通过实体框架获取同一对象的所有子对象
【发布时间】:2022-01-15 13:40:21
【问题描述】:

我需要你的帮助。我有下一个简单的课程:

public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int ParentId { get; set; }
    public IEnumerable<Person> People { get; set; }
}

我需要按 ID 获取班级以及所有 ParentId 与头等舱 ID 相同的班级孩子(以及孩子的孩子)?我需要使用 LINQ 过滤。感谢您的帮助!

【问题讨论】:

  • 请展示你到目前为止所做的尝试
  • 您可以打开延迟加载,但请记住,这会影响性能。
  • 尝试创建递归方法并获取孩子,直到没有孩子为止
  • 请查找 LINQ + 层次结构或递归。这是一个经常出现的问题(没有双关语)。
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: c# asp.net entity-framework linq oop


【解决方案1】:

好的,我可以找到两种解决方案。第一种是在服务器端使用递归方法。但是在这个变体中,您需要为每个层次结构每次请求数据库。最好的解决方案是在 SQL 中使用递归。您只需对数据库执行一个请求。我附上链接。 https://medium.com/swlh/recursion-in-sql-explained-graphically-679f6a0f143b

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 2014-09-09
    相关资源
    最近更新 更多