Пример #1
0
        public ActionResult ForgetPassword(ForgetPasswordViewModel model)
        {
            var           db    = new ApplicationDbContext();
            ResetPassword token = new ResetPassword();
            Guid          guid  = Guid.NewGuid();

            token.Guid  = guid;
            token.State = 1;
            var user = db.Users.FirstOrDefault(c => c.UserName == model.UserName);

            token.UserId   = user.Id;
            token.CreateOn = DateTime.Now;
            token.UpdateOn = DateTime.Now;
            try
            {
                token.SaveOrUpdate();
                var    resetLink = "<a href='" + Url.Action("ResetPassword", "Account", new { userid = user.Id, guid = token.Guid }, "http") + "'>Reset Password</a>";
                string subject   = "Password Reset Token";
                string emailBody = "<b>Please find the Password Reset Token</b><br/>" + resetLink; //edit it
                var    test      = SendMailMessage(user.Email, subject, emailBody);
                var    temp      = user.Email.Split('@');
                SetSuccessMessage("Have sent a password reseting link to: " + temp[0] + "@xxxxx");
            }
            catch
            {
                SetErrorMessage("Sending Email failed.");
            }

            // If we got this far, something failed, redisplay form

            return(RedirectToAction("Index", "Home"));
        }