public IActionResult CreateDestinationCollection( [FromBody] IEnumerable <DestinationForCreationDto> destinationCollection) { if (destinationCollection == null) { return(BadRequest()); } var destinationEntities = Mapper.Map <IEnumerable <Destination> >(destinationCollection); foreach (var destination in destinationEntities) { _tripInfoRepository.AddDestination(destination); } if (!_tripInfoRepository.Save()) { throw new Exception("Creating an destination collection failed on save."); } var destinationCollectionToReturn = Mapper.Map <IEnumerable <DestinationDto> >(destinationEntities); var idsAsString = string.Join(",", destinationCollectionToReturn.Select(a => a.Id)); return(CreatedAtRoute("GetDestinationCollection", new { ids = idsAsString }, destinationCollectionToReturn)); //return Ok(); }
public IActionResult CreateDestination([FromBody] DestinationForCreationDto destination) { if (destination == null) { return(BadRequest()); } var destinationEntity = Mapper.Map <Destination>(destination); _tripInfoRepository.AddDestination(destinationEntity); if (!_tripInfoRepository.Save()) { throw new Exception("Creating an destination failed on save."); // return StatusCode(500, "A problem happened with handling your request."); } var destinationToReturn = Mapper.Map <DestinationDto>(destinationEntity); return(CreatedAtRoute("GetDestination", new { id = destinationToReturn.Id }, destinationToReturn)); }