Ejemplo n.º 1
0
        public async Task <UserRegisterAnswerDto> Register(UserRegisterQueryDto userRegisterDto)
        {
            if ((await _repository.GetUserByEmail(userRegisterDto.Email)) != null)
            {
                throw new FormInvalidException("", $"Email \'{userRegisterDto.Email}\' is already taken");
            }

            var user   = _mapper.Map <User>(userRegisterDto);
            var result = await RegisterNewUser(user, userRegisterDto.Password);

            if (!result.Succeeded)
            {
                throw new FormInvalidException("", result.Errors.Select(e => e.Description).Aggregate((d, res) => res += d + "\n"));
            }

            return(new UserRegisterAnswerDto {
                User = user
            });
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Register([FromBody] UserRegisterQueryDto userRegisterDto)
        {
            var result = await _authenticationService.Register(userRegisterDto);

            return(Created($"api/users/{result.User.Id}", result));
        }