Example #1
0
        public async Task <ActionResult <LibroVM> > PostAutor(int id, LibroVM modelo)
        {
            if (modelo.Autor == null || id != modelo.Autor.Id)
            {
                return(BadRequest());
            }

            var autor = await _repository.GetByIdAsync(id);

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

            if (ModelState.IsValid)
            {
                var libro = new Libro()
                {
                    Titulo    = modelo.Titulo,
                    Precio    = modelo.Precio,
                    Publicado = modelo.Publicado,
                    Autor     = autor
                };

                await _repositoryLibro.AddAsync(libro);

                modelo.Id = libro.Id;
                return(CreatedAtAction("GetLibrosPorAutor", new { id = autor.Id }, modelo));
            }
            return(ValidationProblem(ModelState));
        }