Ejemplo n.º 1
0
        public async Task <GenrePutDTO> PutGenre(int id, GenrePutDTO genrePutDTO)
        {
            if (genrePutDTO == null)
            {
                throw new ArgumentNullException(nameof(genrePutDTO));
            }


            try
            {
                Genre genre = await _context.Genres.FirstOrDefaultAsync(a => a.Id == id).ConfigureAwait(false);

                genre.Category    = genrePutDTO.Category;
                genre.Description = genrePutDTO.Description;

                await _context.SaveChangesAsync().ConfigureAwait(false);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!GenreExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }

            return(genrePutDTO);
        }
Ejemplo n.º 2
0
        public async Task <GenrePutDTO> PostGenre(GenrePutDTO genrePostDTO)
        {
            if (genrePostDTO == null)
            {
                throw new ArgumentNullException(nameof(genrePostDTO));
            }

            var genreResult = _context.Genres.Add(new Genre()
            {
                Category    = genrePostDTO.Category,
                Description = genrePostDTO.Description
            });

            await _context.SaveChangesAsync().ConfigureAwait(false);

            genrePostDTO.Id = genreResult.Entity.Id;

            return(genrePostDTO);
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> PutGenre(int id, GenrePutDTO genrePutDTO)
        {
            if (genrePutDTO == null)
            {
                throw new ArgumentNullException(nameof(genrePutDTO));
            }

            if (id != genrePutDTO.Id)
            {
                return(BadRequest());
            }

            var genreResult = await _genrerepository.PutGenre(id, genrePutDTO).ConfigureAwait(false);

            if (genreResult == null)
            {
                return(NotFound());
            }

            return(NoContent());
        }
Ejemplo n.º 4
0
        public async Task <ActionResult <GenreDTO> > PostGenre(GenrePutDTO genrePutDTO)
        {
            var genreResult = await _genrerepository.PostGenre(genrePutDTO).ConfigureAwait(false);

            return(CreatedAtAction("GetGenre", new { id = genreResult.Id }, genreResult));
        }