public int CreateUser(CreatingUserModel user)
        {
            var result = DefaultErrorCode;

            using (var connection = factory.CreateConnection())
            {
                connection.ConnectionString = connectionString;
                var command = connection.CreateCommand();
                command.CommandText = "[UserInfo].[CreateUser]";
                command.CommandType = CommandType.StoredProcedure;

                var loginParam = command.CreateParameter();
                loginParam.ParameterName = "@Login";
                loginParam.DbType        = DbType.StringFixedLength;
                loginParam.Value         = user.Login;

                var passwordParam = command.CreateParameter();
                passwordParam.ParameterName = "@Password";
                passwordParam.DbType        = DbType.Guid;
                passwordParam.Value         = GetHashString(user.Password);

                var firstNameParam = command.CreateParameter();
                firstNameParam.ParameterName = "@FirstName";
                firstNameParam.DbType        = DbType.StringFixedLength;
                firstNameParam.Value         = user.FirstName;

                var lastNameParam = command.CreateParameter();
                lastNameParam.ParameterName = "@LastName";
                lastNameParam.DbType        = DbType.StringFixedLength;
                lastNameParam.Value         = user.LastName;

                command.Parameters.AddRange(new[]
                {
                    loginParam,
                    passwordParam,
                    firstNameParam,
                    lastNameParam
                });

                connection.Open();
                result = (int)command.ExecuteScalar();
            }

            return(result);
        }
Пример #2
0
        public async Task <ActionResult> Register(CreatingUserModel model)
        {
            if (ModelState.IsValid)
            {
                User user = new User {
                    UserName = model.Name, Email = model.Email, PhoneNumber = model.PhoneNumber
                };

                IdentityResult result = await Manager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    await Login(new AuthUserModel { Name = model.Name, Password = model.Password }, "/Home/Index");
                }
                else
                {
                    AddErrorsToState(result);
                }
            }

            return(View(model));
        }
        public async Task <ActionResult> Create(CreatingUserModel model)
        {
            if (ModelState.IsValid)
            {
                User user = new User {
                    UserName = model.Name, Email = model.Email, PhoneNumber = model.PhoneNumber
                };

                IdentityResult result = await Manager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    AddErrorsToState(result);
                }
            }

            return(View(model));
        }