public ActionResult Create(CursoModel curso)
 {
     try
     {
         ModelState["ID"].Errors.Clear();
         if (ModelState.IsValid)
         {
             repository.InserirCurso(new Curso
             {
                 Descricao = curso.Descricao,
                 Vagas = curso.Vagas
             });
             TempData["Mensagem"] = "Curso inserido com sucesso !!";
             //redirecionando para a Action Index
             return RedirectToAction("Index");
         }
         return View(curso);
     }
     catch (Exception ex)
     {
         TempData["Mensagem"] = ex.Message;
         return RedirectToAction("Index");
     }
 }
 /// <summary>
 /// A injeção de depencia agora é feita pelo repositorio
 /// não mais pelo VestContext
 /// </summary>
 /// <param name="cursoRepository"></param>
 public CursoController(ICursoRepository cursoRepository, CursoModel cursoModelParam, IAutenticacaoProvider autenticacaoProviderParam)
 {
     repository = cursoRepository;
     cursoModel = cursoModelParam;
     autenticacaoProvider = autenticacaoProviderParam;
 }
 public ActionResult Edit(CursoModel curso)
 {
     try
     {
         ModelState["ID"].Errors.Clear();
         if (ModelState.IsValid)
         {
             repository.AtualizaCurso(new Curso
             {
                 Descricao = curso.Descricao,
                 Vagas = curso.Vagas,
                 ID = curso.ID
             });
             TempData["Mensagem"] = "Curso atualizado com sucesso !!";
             return RedirectToAction("Index");
         }
         return View(curso);
     }
     catch (Exception ex)
     {
         TempData["Mensagem"] = ex.Message;
         return RedirectToAction("Index");
     }
 }