public async Task AddReservations(IEnumerable <Reservation> reservations) { foreach (var reservation in reservations) { foreach (var folio in reservation.Folios) { var existingFolio = await _folioRepository.GetExistingFolio(folio.Id); if (existingFolio != null) { reservation.Folios = reservation.Folios.Where(f => !f.Id.Equals(existingFolio.Id)).ToList(); } } var existingRatePlan = await _ratePlanRepository.GetExistingRatePlan(reservation.RatePlan.Id); if (existingRatePlan != null) { reservation.RatePlan = existingRatePlan; } await _reservationRepository.CreateReservationAsync(reservation); } }