public IActionResult Register(User user) { // Check initial ModelState if (ModelState.IsValid) { // If a User exists with provided Username if (dbContext.Users.Any(u => u.Username == user.Username)) { ModelState.AddModelError("Username", "Username already in use!"); return(View("Index")); } PasswordHasher <User> Hasher = new PasswordHasher <User>(); user.Password = Hasher.HashPassword(user, user.Password); User NewUser = new User { FirstName = user.FirstName, LastName = user.LastName, Username = user.Username, Password = user.Password, ConPass = user.Password, }; dbContext.Add(NewUser); dbContext.SaveChanges(); User newuser = dbContext.Users.FirstOrDefault(n => n.Username == user.Username); HttpContext.Session.SetInt32("UserId", newuser.UserId); HttpContext.Session.SetString("User", newuser.FirstName); return(RedirectToAction("Dashboard")); } return(View("Index")); }