internal static IEnumerable <Expression <Func <InventoryShipmentOrder, InventoryShipmentOrderDetailReturn> > > SplitSelectInventoryShipmentOrderDetail(IInventoryUnitOfWork inventoryUnitOfWork, DateTime currentDate, InventoryOrderEnum inventoryOrder) { if (inventoryUnitOfWork == null) { throw new ArgumentNullException("inventoryUnitOfWork"); } var pickOrder = InventoryPickOrderProjectors.SplitSelectDetails(); return(new Projectors <InventoryShipmentOrder, InventoryShipmentOrderDetailReturn> { { SplitSelectInventoryShipmentOrderDetailBase(inventoryUnitOfWork, currentDate, inventoryOrder), p => p.Translate().To <InventoryShipmentOrderDetailReturn>() }, { pickOrder, s => i => new InventoryShipmentOrderDetailReturn { PickOrder = s.Invoke(i.InventoryPickOrder), } } }); }