Пример #1
0
        public ActionResult Register(RegisterDto registerDto)
        {
            if (!ModelState.IsValid)
            {
                return(View(registerDto));
            }

            if (registerDto.RepeatedPassword != registerDto.Password)
            {
                ModelState.AddModelError(nameof(registerDto.Password), "Пароли не совпадают");
                ModelState.AddModelError(nameof(registerDto.RepeatedPassword), "Пароли не совпадают");
                return(View(registerDto));
            }

            var existedUser = UserDataStore.GetAll()
                              .SingleOrDefault(user => user.Login == registerDto.Login && user.PasswordHash == string.Empty);

            if (existedUser == null)
            {
                ModelState.AddModelError(nameof(registerDto.Login),
                                         "Данный логин недоступен, обратитесь к администратору");
                return(View(registerDto));
            }

            existedUser.PasswordHash = PasswordHashService.GetHash(registerDto.Password);
            UserDataStore.Update(existedUser);

            return(RedirectToAction("Index"));
        }
        public override void CreatePerson(Person person, User user)
        {
            using (var transaction = new TransactionScope(_configuration))
            {
                var pDS = new PersonDataStore(transaction);

                user.Person = pDS.Insert(person);

                var uDS = new UserDataStore(transaction);

                uDS.Update(user);

                transaction.Commit();
            }
        }