コード例 #1
0
        public async Task <ActionResult> Register(ApplicationUser user)
        {
            if (!ModelState.IsValid)
            {
                return(View(user));
            }

            if (_context.ApplicationUsers.Any(u => u.Email == user.Email))
            {
                ModelState.AddModelError("Email", "This email is duplicate");
                return(View(user));
            }

            if (_context.ApplicationUsers.Any(u => u.Username == user.Username))
            {
                ModelState.AddModelError("Email", "This username is duplicate");
                return(View(user));
            }

            user.Password = user.ConfirmPassword = Crypto.HashPassword(user.Password);

            _context.ApplicationUsers.Add(user);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Login)));
        }