コード例 #1
0
ファイル: HomeController.cs プロジェクト: MiyaSteven/CSharp
        public IActionResult Login(LoginRegWrapper FromForm)
        {
            if (ModelState.IsValid)
            {
                User ExistsInDb = DbContext.Users.FirstOrDefault(u => u.Email == FromForm.Login.Email);

                if (ExistsInDb == null)
                {
                    ModelState.AddModelError("Login.Emial", "Invalid Email/Password");
                    return(LoginReg());
                }
                PasswordHasher <LoginUser> Hasher = new PasswordHasher <LoginUser>();
                PasswordVerificationResult Result = Hasher.VerifyHashedPassword(FromForm.Login, ExistsInDb.Password, FromForm.Login.Password);

                if (Result == 0)
                {
                    ModelState.AddModelError("Login.Email", "Invalid Email/Password");
                    return(LoginReg());
                }
                HttpContext.Session.SetInt32("UserId", ExistsInDb.UserId);
                return(RedirectToAction("Homepage"));
            }
            else
            {
                return(LoginReg());
            }
        }
コード例 #2
0
ファイル: HomeController.cs プロジェクト: MiyaSteven/CSharp
        public IActionResult Register(LoginRegWrapper FromForm)
        {
            if (ModelState.IsValid)
            {
                if (DbContext.Users.Any(u => u.Email == FromForm.Register.Email))
                {
                    ModelState.AddModelError("Register.Email", "This Email exists already. Please Log in.");
                    return(LoginReg());
                }
                PasswordHasher <User> Hasher = new PasswordHasher <User>();
                FromForm.Register.Password = Hasher.HashPassword(FromForm.Register, FromForm.Register.Password);

                DbContext.Add(FromForm.Register);
                DbContext.SaveChanges();

                HttpContext.Session.SetInt32("UserId", FromForm.Register.UserId);
                return(RedirectToAction("HomePage"));
            }
            else
            {
                return(LoginReg());
            }
        }