public ActionResult Register(Models.UserModel User) { if (ModelState.IsValid) { using (var db = new mainDBEntities()) { var crypto = new SimpleCrypto.PBKDF2(); var encrpPass = crypto.Compute(User.Password); var sysUser = db.SystemUsers.Create(); sysUser.Email = User.Email; sysUser.Password = encrpPass; sysUser.PasswordSalt = crypto.Salt; sysUser.UserID = Guid.NewGuid(); db.SystemUsers.Add(sysUser); db.SaveChanges(); return(RedirectToAction("Index", "Home")); } } return(View(User)); }
public ActionResult ForgotPassword(string UserName) { //check user existance var user = UserName; if (user == null) { TempData["Message"] = "Email does not exist in database."; } else { //generate password token var token = "as4da2sd1a"; //create url with above token var resetLink = "<a href='" + Url.Action("ResetPassword", "Account", new { un = UserName, rt = token }, "http") + "'>Reset Password</a>"; //get user emailid var db = new mainDBEntities(); var emailid = (from i in db.SystemUsers where i.Email == UserName select i.Email).FirstOrDefault(); //send mail string subject = "Password request"; string body = "<b>Please click the link to reset your password</b><br/>" + resetLink; //edit it try { SendEMail(emailid, subject, body); TempData["Message"] = "Mail Sent."; } catch (Exception ex) { TempData["Message"] = "Error occured while sending email." + ex.Message; } //only for testing TempData["Message"] = resetLink; } return(View()); }