public async Task <TicketDto> AddEntityAsync(TicketDto entity) { if (!_flightRepository.EntityExistsAsync(entity.FlightId).Result) { throw new NotFoundException(); } var validationResult = await _validator.ValidateAsync(entity); if (!validationResult.IsValid) { throw new BadRequestException(); } var mapedEntity = _mapper.Map <TicketDto, Ticket>(entity); await _repository.AddEntityAsync(mapedEntity); if (!_repository.SaveAsync().Result) { throw new Exception("Adding Ticket failed on save."); } return(_mapper.Map <Ticket, TicketDto>(mapedEntity)); }