public ActionResult Login(Login login, string returnUrl) { if (ModelState.IsValid) { var usuarioStore = new UsuarioStore(); var usuarioManager = new UserManager <Usuario, int>(usuarioStore); var usuario = usuarioManager.FindByName(login.Nome); if (usuario != null) { var gerenciadorDeAutenticacao = HttpContext.GetOwinContext().Authentication; var identidadeUsuario = usuarioManager.CreateIdentity(usuario, DefaultAuthenticationTypes.ApplicationCookie); gerenciadorDeAutenticacao.SignIn(new AuthenticationProperties() { IsPersistent = false }, identidadeUsuario); if (returnUrl == null) { returnUrl = "/Home/Index"; } return(new RedirectResult(returnUrl)); } else { ModelState.AddModelError("", "Usuário ou senha invalida."); return(View(login)); } } return(View()); }
public ActionResult Cadastrar(Usuario user) { if (ModelState.IsValid) { //Obter a UserStore, UserManager var usuarioStore = new UsuarioStore(); var usuarioManager = new UserManager <Usuario, int>(usuarioStore); IdentityResult resultado = usuarioManager.Create(user); //Se OK if (resultado.Succeeded) { //Autentica e volta para a página inicial var gerenciadorAutenticao = HttpContext.GetOwinContext().Authentication; var identidadeUsuario = usuarioManager.CreateIdentity(user, DefaultAuthenticationTypes.ApplicationCookie); gerenciadorAutenticao.SignIn( new AuthenticationProperties() { }, identidadeUsuario); return(RedirectToAction("Index", "Home")); } } else //Erro, exibe o erro { return(View(user)); } return(RedirectToAction("Index", "Home")); }