public ActionResult Login(LoginViewModel model) { if (!ModelState.IsValid) { return View(model); } var result = DataAccessor.AccountRepository.CheckIdentity( new Identity { MemberName = model.MemberName, PasswordHash = CryptoHelper.Hash(model.Password) }); if (result) { FormsAuthentication.SetAuthCookie(model.MemberName, model.RememberMe); var account = DataAccessor.AccountRepository.GetAccountByIdentity(IdentityType.QRBaId, model.MemberName); CookieHelper.SetCookie(Response, Constants.AccountId, account.Id.ToString(), model.RememberMe); var codeIdList = CookieHelper.GetAnonymousCodeIdList(Request); foreach (var codeId in codeIdList) { var code = DataAccessor.CodeRepository.GetCode(Constants.AnonymousId, codeId); if (code != null) { code.AccountId = account.Id; code.CodeId = 0; code = DataAccessor.CodeRepository.AddCode(code); DataAccessor.CodeRepository.RemoveCode(Constants.AnonymousId, codeId); FileHelper.TransferCode(Constants.AnonymousId, codeId, account.Id, code.CodeId, code.BackgroundContentType); } } CookieHelper.ClearAnonymousCodeIdList(Response); return RedirectToLocal(model.ReturnUrl); } else { Danger("用户名或密码错了 ╮(╯▽╰)╭", true); return View(); } }
public ActionResult Login(string returnUrl) { var model = new LoginViewModel { ReturnUrl = returnUrl }; return View("Login", model); }