Linq选择没有子节点的父记录

Cha*_*son 4 c# linq asp.net-mvc

我有这样的层次结构:

- Order
  - order details
      - work order header
         - work order details
Run Code Online (Sandbox Code Playgroud)

我想选择没有工单详细信息的工单.

到目前为止我有这个,但它返回一级,订单详细信息......我希望下一级,工作订单标题.

IEnumerable<OrderDetail> odWithoutWoDtls = order.OrderDetails.Where(od => od.WorkOrderHeaders.Any(woh => woh.WorkOrderDetails.Count() == 0));
Run Code Online (Sandbox Code Playgroud)

Ste*_*ler 6

IEnumerable<WorkOrderHeader> headersWithoutDetails = 
order.OrderDetails
.SelectMany(od => od.WorkOrderHeaders)
.Where(woh => !woh.WorkOrderDetails.Any())
Run Code Online (Sandbox Code Playgroud)