LINQ 查询 Return 列表的唯一列表

LINQ Query Return unique list of lists

我是 Linq 的新手,正在努力解决以下问题。

我有一些模型结构如下

class Order {
    public Guid ID
    public List<OrderItems> OrderItems
}

class OrderItem {
    public Guid ID
    public Guid OrderID
    public List<OrderItemAddOns> OrderItemAddOns
}

class OrderItemAddOn {
    public Guid ID
    public Guid OrderItemID
}

如何查询数据库以获取包含 OrderItems 相关列表的订单列表,其中包含 OrderItemAddOns 相关列表?

使用 Entity Framework,您可以使用 Include() 从您的数据库及其相关实体检索订单,这将获取任何相关的 OrderItemsThenInclude() 这将获取任何OrderItemAddOns 一个 OrderItem 有:

var result = db.Orders
                 .Include(o => o.OrderItems)
                 .ThenInclude(o => o.OrderItemAddOns)
                 .ToList();