예제 #1
0
        public async Task <IActionResult> Register([FromBody] UserForRegisterModel userForRegister)
        {
            if (!string.IsNullOrEmpty(userForRegister.UserName))
            {
                userForRegister.UserName = userForRegister.UserName.ToLower();
            }

            if (await _service.UserExists(userForRegister.UserName))
            {
                return(StatusCode((int)HttpStatusCode.Conflict, new { Result = "Username is already taken" }));
            }

            // validate request
            if (!ModelState.IsValid)
            {
                return(StatusCode((int)HttpStatusCode.InternalServerError, ModelState));
            }

            var CreatedUser = await _service.Register(userForRegister, userForRegister.Password);

            if (CreatedUser != null)
            {
                return(StatusCode((int)HttpStatusCode.Created, CreatedUser));
            }

            return(StatusCode((int)HttpStatusCode.InternalServerError, new { Result = "Could not create user." }));
        }
예제 #2
0
        public async Task <bool> SignUpUserRevised(UserForRegisterModel userForRegisterModel)
        {
            var client = new HttpClient();


            var         json    = JsonConvert.SerializeObject(userForRegisterModel);
            HttpContent content = new StringContent(json);

            content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

            var response = await client.PostAsync(App.accessUrl + "auth/register", content);

            return(response.IsSuccessStatusCode);
        }
예제 #3
0
        public async Task <UserCreatedModel> Register(UserForRegisterModel user, string password)
        {
            var userToCreate = _mapper.Map <Users>(user);

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(password, out passwordHash, out passwordSalt);

            userToCreate.PasswordHash = passwordHash;
            userToCreate.PasswordSalt = passwordSalt;

            await _context.AddAsync(userToCreate);

            await _context.SaveChangesAsync();

            var userToReturn = _mapper.Map <UserCreatedModel>(userToCreate);

            return(userToReturn);
        }
예제 #4
0
 public Task <UserCreatedModel> Register(UserForRegisterModel user, string password)
 {
     return(_repo.Register(user, password));
 }