public async Task <IActionResult> UpdateGenre(Guid genreId, GenrePutRequest genrePutRequest) { var genreFromRepo = await _genreRepository.GetGenre(genreId); if (!_genreRepository.GenreExists(genreId)) { //TODO: Add genre if not exists var genreToAdd = _mapper.Map <Genre>(genrePutRequest); genreToAdd.Id = genreId; _genreRepository.AddGenre(genreToAdd); await _genreRepository.SaveAsync(); var genreGetResponse = _mapper.Map <GenreGetResponse>(genreToAdd); return(CreatedAtRoute( "GetGenre", new { version = HttpContext.GetRequestedApiVersion().ToString(), genreId = genreGetResponse.Id }, genreGetResponse)); } _mapper.Map(genrePutRequest, genreFromRepo); _genreRepository.UpdateGenre(genreFromRepo); await _genreRepository.SaveAsync(); return(NoContent()); }
public async Task <ActionResult <bool> > PutGenre(GenrePutRequest request) { return(Ok(await _repository.Update(_mapper.Map <Genre>(request)))); }