コード例 #1
0
        // PUT: api/Filmes/5
        /// <summary>
        /// Atualiza um filme consoante o ID indicado
        /// </summary>
        /// <param name="filmeAlterado"></param>
        /// <returns></returns>
        public IHttpActionResult Put([FromBody] filme filmeAlterado)
        {
            filme filme = dc.filmes.FirstOrDefault(x => x.id == filmeAlterado.id);

            if (filme == null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Não existe um filme com esse id")));
            }

            categoria categoria = dc.categorias.FirstOrDefault(x => x.sigla == filmeAlterado.categoria);

            if (categoria == null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Não existe uma categoria com essa sigla")));
            }

            filme.titulo    = filmeAlterado.titulo;
            filme.categoria = filmeAlterado.categoria;

            try
            {
                dc.SubmitChanges();
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e)));
            }

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK)));
        }
コード例 #2
0
ファイル: filmesController.cs プロジェクト: RamonLuz/.Net
        public async Task <IActionResult> Putfilme(int id, filme filme)
        {
            if (id != filme.id)
            {
                return(BadRequest());
            }

            _context.Entry(filme).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!filmeExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #3
0
        // POST: api/Filmes
        /// <summary>
        /// Insere um filme novo na tabela "filmes"
        /// </summary>
        /// <param name="novoFilme"></param>
        /// <returns></returns>
        public IHttpActionResult Post([FromBody] filme novoFilme)
        {
            filme filme = dc.filmes.FirstOrDefault(x => x.id == novoFilme.id);

            if (filme != null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.Conflict, "Já existe um filme com esse id")));
            }

            categoria categoria = dc.categorias.FirstOrDefault(x => x.sigla == novoFilme.categoria);

            if (categoria == null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Não existe uma categoria com essa sigla")));
            }

            dc.filmes.InsertOnSubmit(novoFilme);

            try
            {
                dc.SubmitChanges();
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e)));
            }

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK)));
        }
コード例 #4
0
        public IHttpActionResult Delete(string sigla)
        {
            categoria categoria = dc.categorias.FirstOrDefault(x => x.sigla == sigla);

            filme filme = dc.filmes.FirstOrDefault(x => x.categoria == sigla);

            if (filme != null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.Conflict, "Essa categoria tem um filme associado")));
            }

            if (categoria != null)
            {
                dc.categorias.DeleteOnSubmit(categoria);

                try
                {
                    dc.SubmitChanges();
                }
                catch (Exception e)
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e)));
                }

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK)));
            }

            return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Não existe uma categoria com essa sigla")));
        }
コード例 #5
0
ファイル: filmesController.cs プロジェクト: RamonLuz/.Net
        public async Task <ActionResult <filme> > Postfilme(filme filme)
        {
            _context.filmes.Add(filme);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("Getfilme", new { id = filme.id }, filme));
        }
コード例 #6
0
ファイル: filmesController.cs プロジェクト: SamukaSRB/NS
        public ActionResult DeleteConfirmed(int id)
        {
            filme filme = db.Filmes.Find(id);

            db.Filmes.Remove(filme);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #7
0
ファイル: filmesController.cs プロジェクト: SamukaSRB/NS
 public ActionResult Edit([Bind(Include = "Codigo,Nome,Diretor,Ano,Duracao,Categoria,Descricao")] filme filme)
 {
     if (ModelState.IsValid)
     {
         db.Entry(filme).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(filme));
 }
コード例 #8
0
ファイル: filmesController.cs プロジェクト: SamukaSRB/NS
        public ActionResult Create([Bind(Include = "Codigo,Nome,Diretor,Ano,Duracao,Categoria,Descricao")] filme filme)
        {
            if (ModelState.IsValid)
            {
                db.Filmes.Add(filme);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(filme));
        }
コード例 #9
0
ファイル: filmesController.cs プロジェクト: SamukaSRB/NS
        // GET: filmes/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            filme filme = db.Filmes.Find(id);

            if (filme == null)
            {
                return(HttpNotFound());
            }
            return(View(filme));
        }
コード例 #10
0
        // DELETE: api/Filmes/5
        /// <summary>
        /// Apaga um filme consoante o ID indicado da tabela "filmes"
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IHttpActionResult Delete(int id)
        {
            filme filme = dc.filmes.FirstOrDefault(x => x.id == id);

            if (filme != null)
            {
                dc.filmes.DeleteOnSubmit(filme);

                try
                {
                    dc.SubmitChanges();
                }
                catch (Exception e)
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e)));
                }

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK)));
            }

            return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Não existe um filme com esse ID")));
        }