public ActionResult ChangeEmail(User user) { string userID = GetUserID(); User oldInfo = userSql.GetUserByID(userID); user.Email = user.Email.ToLower(); bool emailExists = userSql.CheckForEmail(user.Email); var userEmail = ModelState["Email"]; if (userEmail == null || userEmail.Errors.Any()) { TempData["change-error"] = "Invalid input: Your email hasn't been changed."; return(View("ChangeUserInfo", oldInfo)); } else if (emailExists) { if (user.Email != oldInfo.Email) { TempData["change-error"] = "That email is associated with a different user."; } return(View("ChangeUserInfo", oldInfo)); } userSql.UpdateEmail(user.Email, userID); user = userSql.GetUserByID(userID); TempData["change-success"] = "Email changed successfully"; return(RedirectToAction("ChangeInfoInit", user)); }