示例#1
0
        public ActionResult Register(Models.UserModel user)
        {
            if (ModelState.IsValid)
            {
                using (var db = new CustomLogin_MVCContext())
                {
                    var crypto = new SimpleCrypto.PBKDF2();
                    var encrypPass = crypto.Compute(user.Password);
                    var newUser = db.UserModels.Create();
                    newUser.Email = user.Email;
                    newUser.Password = encrypPass;
                    newUser.PasswordSalt = crypto.Salt;
                    newUser.Id = Guid.NewGuid();
                    db.UserModels.Add(newUser);
                    db.SaveChanges();
                    return RedirectToAction("Index", "User");
                }
            }
            else
            {
                ModelState.AddModelError("", "Data is not correct");
            }

            return View();
        }
示例#2
0
        private bool IsValid(string email, string password)
        {
            var crypto = new SimpleCrypto.PBKDF2();
            bool IsValid = false;

            using (var db = new CustomLogin_MVCContext())
            {
                var user = db.UserModels.FirstOrDefault(u => u.Email == email);
                if (user != null)
                {
                    if (user.Password == crypto.Compute(password, user.PasswordSalt))
                    {
                        IsValid = true;
                    }
                }
            }
            return IsValid;
        }