public ActionResult Login(LoginViewModel model, string returnUrl) { if(ModelState.IsValid) { var authService = new UserIdentityAuthenticationService(); if(authService.SignIn(model.LoginName, model.Password)) { if(Url != null && !string.IsNullOrEmpty(returnUrl)) { return Redirect(returnUrl); } else { return RedirectToAction("Index", "Dashboard"); } } else { ModelState.AddModelError("", "Invalid username/password. Please try again."); return RedirectToAction("Login", model); } } ModelState.AddModelError("", "Invalid username/password. Please try again."); return RedirectToAction("Login", model); }
public static UserIdentity Deserialize(string data) { try { var ticket = FormsAuthentication.Decrypt(data); return new UserIdentity(ticket); } catch { var service = new UserIdentityAuthenticationService(); service.SignOut(); return null; } }