public void UpdateResources(TransportOrderStatus resourceListStatus, List occupiedBySameLeButDifferentOrder) { //If a OrdersHost is Finished or Cancelled all ResourceList for this OH are affected, for other status only entries with same Destination Resources .Where(r => !TransportOrderStatusGroups.Complete.Contains(r.Status) && (r.Name == Destination || resourceListStatus == TransportOrderStatus.Finished || resourceListStatus == TransportOrderStatus.Cancelled)) .ToList() .ForEach(r => r.Status = resourceListStatus); occupiedBySameLeButDifferentOrder?.ForEach(r => r.Status = TransportOrderStatus.Cancelled); }