public async Task <ActionResult <BrainTeaserDto> > Create(BrainTeaserRequest model)
        {
            var brainTeaser = await _repository.Create(model);

            return(brainTeaser != null
                ? Created(nameof(Create), brainTeaser)
                : StatusCode(StatusCodes.Status500InternalServerError, null));
        }
        public async Task <BrainTeaserDto> Create(BrainTeaserRequest model)
        {
            var brainTeaser = new Data.Models.BrainTeaser
            {
                Riddle = model.Riddle
            };

            _db.BrainTeasers.Add(brainTeaser);
            await _db.SaveChangesAsync();

            return(await GetById(brainTeaser.Id));
        }
        public async Task <BrainTeaserDto> Update(int id, BrainTeaserRequest model)
        {
            var brainTeaser = await _db.BrainTeasers.FindAsync(id);

            brainTeaser.Riddle = model.Riddle;

            _db.BrainTeasers.Update(brainTeaser);

            await _db.SaveChangesAsync();

            return(await GetById(brainTeaser.Id));
        }
        public async Task <ActionResult <BrainTeaserDto> > Update(int id, BrainTeaserRequest model)
        {
            var brainTeaser = await _repository.GetById(id);

            if (brainTeaser == null)
            {
                return(NotFound(BrainTeaserNotFound));
            }

            var result = await _repository.Update(id, model);

            return(result != null
                ? Accepted(nameof(Update), result)
                : StatusCode(StatusCodes.Status500InternalServerError, null));
        }