コード例 #1
0
        public async Task <UserResponseDto> RegisterUser(RegisterUserQueryDto registerUserDto)
        {
            var check = await _userRepository.SingleUserNameAndEmail(username : registerUserDto.UserName, email : registerUserDto.Email);

            if (check != null)
            {
                // @TO-DO refactor
                var email    = registerUserDto.Email == check.Email ? "Email - " : "";
                var username = registerUserDto.UserName == check.UserName ? "UserName :"******"";

                throw new EntityAlreadyExistException("", $" {email} {username} already taken!");
            }

            var user = _mapper.Map <User>(registerUserDto);

            var result = await RegisterNewUser(user, registerUserDto.Password);

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

            return(_mapper.Map <UserResponseDto>(registerUserDto));
        }
コード例 #2
0
ファイル: AuthController.cs プロジェクト: BigDyma/MDashboards
        public async Task <IActionResult> Create([FromBody] RegisterUserQueryDto registerUser)
        {
            var result = await _authService.RegisterUser(registerUser);

            return(Ok(result));
        }