public ActionResult DeleteAgenda(Agenda pAgenda, int pId)
 {
     try
     {
         AgendaRepository exclui = new AgendaRepository();
         exclui.Delete(pId);
         return RedirectToAction("ListAgendas").ComMensagemDeSucesso("Agendamento excluído com sucesso!");
     }
     catch
     {
         throw;
     }
 }
        // POST: api/Agenda
        public HttpResponseMessage Post(Agenda pAgenda)
        {
            if (!ModelState.IsValid)
            {
                return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
            }

            try
            {
                AgendaRepository create = new AgendaRepository();
                create.Create(pAgenda);
                return Request.CreateResponse(HttpStatusCode.OK);
            }
            catch (ArgumentException ex)
            {
                return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);
            }
        }
 // DELETE: api/Agenda/5
 public HttpResponseMessage Delete(int pId)
 {
     try
     {
         AgendaRepository update = new AgendaRepository();
         var cliente = AgendaRepository.GetOne(pId);
         if (cliente.IdCliente != 0)
         {
             update.Delete(pId);
             return Request.CreateResponse(HttpStatusCode.OK);
         }
         else
         {
             return Request.CreateResponse(HttpStatusCode.BadRequest);
         }
     }
     catch (ArgumentException ex)
     {
         return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);
     }
 }
 public ActionResult CreateAgenda(Agenda pAgenda)
 {
     try
     {
         if (ModelState.IsValid)
         {
             ViewBag.IdTecnico = new SelectList(TecnicoRepository.GetAll(), "IdTecnico", "Nome", pAgenda.IdTecnico);
             ViewBag.IdCliente = new SelectList(ClienteRepository.GetAll(), "IdCliente", "Nome", pAgenda.IdCliente);
             ViewBag.Status = new SelectList(new Agenda().ListStatus(), "Status", "Status", pAgenda.Status);
             AgendaRepository nova = new AgendaRepository();
             nova.Create(pAgenda);
             return RedirectToAction("ListAgendas").ComMensagemDeSucesso("Agendamento cadastrado com sucesso!");
         }
         else
         {
             return View();
         }
     }
     catch
     {
         return RedirectToAction("ListAgendas").ComMensagemDeErro("Agendamento não foi cadastrado! Verifique os dados informados");
         throw;
     }
 }
        // PUT: api/Agenda/5
        public HttpResponseMessage Put(int pId, Agenda pAgenda)
        {
            if (!ModelState.IsValid)
            {
                return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
            }

            if (pId != pAgenda.IdAgenda)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }

            try
            {
                AgendaRepository update = new AgendaRepository();
                update.Update(pAgenda);
                return Request.CreateResponse(HttpStatusCode.OK);
            }
            catch (ArgumentException ex)
            {
                return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex);
            }
        }
 public ActionResult EditAgenda(Agenda pAgenda)
 {
     try
     {
         if (ModelState.IsValid)
         {
             ViewBag.IdTecnico = new SelectList(TecnicoRepository.GetAll(), "IdTecnico", "Nome", pAgenda.IdTecnico);
             ViewBag.Status = new SelectList(new Agenda().ListStatus(), "Status", "Status", pAgenda.Status);
             AgendaRepository edit = new AgendaRepository();
             edit.Update(pAgenda);
             return RedirectToAction("ListAgendas").ComMensagemDeSucesso("Agendamento editado com sucesso!");
         }
         else
         {
             return View("EditAgenda");
         }
     }
     catch
     {
         throw;
     }
 }