public ActionResult Register(RegisterModel model) { model.Perfil = "Paciente"; if (ModelState.IsValid) { // Tente registrar o usuário try { WebSecurity.CreateUserAndAccount(model.UserName, model.Password); WebSecurity.Login(model.UserName, model.Password); Session.Add("UserNameCadastrado", model.UserName); Roles.AddUserToRole(model.UserName, model.Perfil); Session.Add("Mensagem", "Para concluir o cadastro preencha as informações abaixo!"); return RedirectToAction("AddUserPaciente", "Usuario"); } catch (MembershipCreateUserException e) { ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); } } // Se chegarmos até aqui e houver alguma falha, exibir novamente o formulário return View(model); }
public ActionResult Registrar(RegisterModel model) { if (model.Perfil == null) { ModelState.AddModelError("", "O perfil do usuário é obrigatório"); return View(model); } if (ModelState.IsValid) { // Tente registrar o usuário try { WebSecurity.CreateUserAndAccount(model.UserName, model.Password); Session.Add("UserNameCadastrado", model.UserName); Roles.AddUserToRole(model.UserName, model.Perfil); Session.Add("Mensagem", "Para concluir o cadastro preencha as informações abaixo!"); switch (model.Perfil) { case "Medico": return RedirectToAction("AddMedico"); case "Paciente": return RedirectToAction("AddUserPaciente"); case "RespClinica": return RedirectToAction("AddUserClinica"); case "Administrador": Session.Add("Mensagem", "Novo administrador incluído com sucesso!"); return RedirectToAction("Registrar"); } } catch (MembershipCreateUserException e) { ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); } } return View(model); }