public async Task CreateAsync()

in src/Relecloud.Web.CallCenter.Api/Controllers/ConcertController.cs [62:92]


        public async Task<IActionResult> CreateAsync(Concert model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return BadRequest(new CreateResult
                    {
                        Success = false,
                        ErrorMessages = ModelState.ConvertToErrorMessages()
                    });
                }
                else if (model.IsVisible && !await AreTicketsAvailableAsync(model.Id))
                {
                    return BadRequest(new CreateResult
                    {
                        Success = false,
                        ErrorMessages = ModelState.ServerError("Cannot make a concert visible if tickets are not available for sale")
                    });
                }

                var newConcertResult = await this.concertRepository.CreateConcertAsync(model);

                return CreatedAtRoute("GetConcertById", new { id = newConcertResult.NewId }, model);
            }
            catch (Exception ex)
            {
                this.logger.LogError(ex, "Unhandled exception from ConcertController.CreateAsync");
                return Problem("Unable to Create the concert");
            }
        }