crichavin
crichavin

Reputation: 4582

select list of related grandchild entities

Trying to get an IEnumerable WorkOrderHeader given the following table structure:

OrderHeader 1:many OrderDetails
OrderDetail 1:1 WorkOrderHeader

Code:

public IEnumerable<WorkOrderHeader> GetInProcessWorkOrdersForOrderBy(OrderHeader orderHeader)
{
    var orderDetails = orderHeader.OrderDetails;
    var workOrders= orderDetails.Select(od => od.WorkOrderHeaders.Where(woh => woh.StatusId < (int)WorkOrderStatus.Complete));
    return workOrders;
}

This is returning a nested IEnumerable<IEnumerable<WorkOrderHeader>>. How do I get just the inner IEnumerable<WorkOrderHeader>?

Upvotes: 1

Views: 46

Answers (1)

Aducci
Aducci

Reputation: 26694

I think you are looking for SelectMany

var workOrders= orderDetails.SelectMany(od => ...)

Upvotes: 2

Related Questions