コード例 #1
0
        public ActionResult ResetPassword(ResetPasswordModel model)
        {
            if (ModelState.IsValid)
            {
                bool resetPasswordSucceeded = false;
                try
                {
                    MembershipUser currentUser = Membership.GetUser(model.Username);
                    if (CrumbsExtensions.HashResetParams(currentUser.UserName, currentUser.ProviderUserKey.ToString()) == model.Reset)
                    {
                        string tempPassword = currentUser.ResetPassword();
                        resetPasswordSucceeded = currentUser.ChangePassword(tempPassword, model.NewPassword);
                    }
                }
                catch (Exception)
                {
                }

                if (resetPasswordSucceeded)
                {
                    return RedirectToAction("ResetPasswordSuccess");
                }
                else
                {
                    ModelState.AddModelError("", "Something is wrong.");
                }
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
コード例 #2
0
        //
        // GET: /Account/ResetPassword
        public ActionResult ResetPassword(string username, string reset)
        {
            if ((reset != null) && (username != null))
            {
                MembershipUser currentUser = Membership.GetUser(username);
                if (CrumbsExtensions.HashResetParams(currentUser.UserName, currentUser.ProviderUserKey.ToString()) == reset)
                {
                    ResetPasswordModel model = new ResetPasswordModel();
                    model.Username = username;
                    model.Reset = reset;
                    return View("ResetPassword", model);
                }
            }

            return View("NotFound");
        }