[HttpPost] //submit do formulario public ActionResult Cadastro(UsuarioViewModel model) { // Verifica se usuário está autenticado e possui perfil de administrador if (!HttpContext.User.Identity.IsAuthenticated && HttpContext.User.IsInRole("Admin")) { TempData["Falha"] = "Necessário estar autenticado com perfil de Administrador"; return(RedirectToAction("Login", "Usuario")); } // Verifica se os dados do model estão de acordo com as regras do UsuarioViewModel if (ModelState.IsValid) { try { UsuarioDal uDal = new UsuarioDal(); if (uDal.HasLogin(model.Login)) { throw new Exception("Este Login já está cadastrado, tente outro"); } Usuario usuario = new Usuario(); usuario.Nome = model.Nome; usuario.Login = model.Login; usuario.Senha = Criptografia.EncryptMD5(model.Senha); usuario.IdPerfil = int.Parse(model.Perfil); // Gravar no Banco de Dados uDal.Insert(usuario); TempData["Sucesso"] = "Usuário cadastrado com sucesso"; // Limpar os campos do formulário ModelState.Clear(); } catch (Exception e) { TempData["Falha"] = e.Message; } } PerfilDal pDal = new PerfilDal(); // Preencher DropDown List Perfil model.Perfis = pDal.EnumerarPerfis(); return(View(model)); }
public ActionResult CadastrarUsuario(UsuarioModelCadastro model) { try { if (ModelState.IsValid) { if (model.Senha.Equals(model.SenhaConfirm)) { UsuarioDal d = new UsuarioDal(); if (!d.HasLogin(model.Login)) { Usuario u = new Usuario(); u.Nome = model.Nome; u.Login = model.Login; u.Senha = Criptografia.EncriptarMD5(model.Senha); d.Inserir(u); ViewBag.Mensagem = "Usuário " + u.Nome + ", cadastrado com sucesso."; ModelState.Clear(); } else { throw new Exception("Erro. Login indisponivel. Tente outro"); } } else { throw new Exception("Erro. Informe as senhas corretamente."); } } } catch (Exception ex) { ViewBag.Mensagem = ex.Message; } return(View("Cadastro")); }