public IActionResult Register(RegisterUserViewModel registerUserViewModel) { if (ModelState.IsValid) { if (context.Users.Where(x => x.Username.ToLower() == registerUserViewModel.Username.ToLower()).SingleOrDefault() == null) { string hash = HashService.GetMd5Hash(md5Hash, registerUserViewModel.Password); User newUser = RegisterUserViewModel.CreateUser( registerUserViewModel.Username, registerUserViewModel.Email, hash); context.Users.Add(newUser); context.SaveChanges(); TempData["user"] = JsonConvert.SerializeObject(newUser); ViewBag.UserExists = ""; return(Redirect("/")); } else { ViewBag.UserExists = "This username is already taken."; } } return(View(registerUserViewModel)); }