Advertisement
plattina

CRUD ControllerFIlme

Apr 27th, 2022
916
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.87 KB | None | 0 0
  1. [Route("api/[controller]")]
  2.     [ApiController]
  3.     public class FilmesController : ControllerBase
  4.     {
  5.         private readonly FilmesAPIDB _context;
  6.  
  7.         public FilmesController(FilmesAPIDB context)
  8.         {
  9.             _context = context;
  10.         }
  11.  
  12.         [HttpGet]
  13.         public ActionResult<IEnumerable<Filme>> GetFilme()
  14.         {
  15.             return _context.Filme.ToList();
  16.         }
  17.  
  18.         [HttpGet("{id}")]
  19.         public ActionResult<Filme> GetFilme(int id)
  20.         {
  21.             var filme = _context.Filme.Find(id);
  22.  
  23.             if (filme == null)
  24.                 return NotFound();
  25.  
  26.             return filme;
  27.         }
  28.  
  29.         [HttpPut("{id}")]
  30.         public IActionResult PutFilme(int id, Filme filme)
  31.         {
  32.             //var result = _context.Filme.FirstOrDefault(f => f.Id == id);
  33.  
  34.             //if (result == null)
  35.             //    return NotFound();
  36.  
  37.             var result = GetFilme(id).Value;
  38.  
  39.             result.Titulo = filme.Titulo;
  40.             result.DataLancamento = filme.DataLancamento;
  41.             result.Preco = filme.Preco;
  42.             result.Genero = filme.Genero;
  43.  
  44.             _context.SaveChanges();
  45.  
  46.             return Ok(result);
  47.         }
  48.  
  49.         [HttpPost]
  50.         public ActionResult<Filme> PostFilme(Filme filme)
  51.         {
  52.             _context.Filme.Add(filme);
  53.             _context.SaveChanges();
  54.  
  55.             return CreatedAtAction("GetFilme", new { id = filme.Id }, filme);
  56.         }
  57.  
  58.         [HttpDelete("{id}")]
  59.         public IActionResult DeleteFilme(int id)
  60.         {
  61.             //var filme = _context.Filme.Find(id);
  62.  
  63.             //if (filme == null) //adicionar isso
  64.             //    return NotFound();
  65.  
  66.             var filme = GetFilme(id).Value;
  67.  
  68.             _context.Filme.Remove(filme);
  69.             _context.SaveChanges();
  70.  
  71.             return NoContent();
  72.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement