Exemplo n.º 1
0
        public async Task <UserClaimsDto> Register(AddUserDto userDto)
        {
            if (await _genericRepository.FindBy(x => x.Email == userDto.Email).AnyAsync())
            {
                return(null);
            }

            User user = new User {
                UserName = userDto.Username, Email = userDto.Email
            };

            if (!string.IsNullOrEmpty(userDto.Password))
            {
                byte[] passwordHash, passwordSalt;
                HashSaltHelper.GeneratePasswordHashAndSalt(userDto.Password, out passwordHash, out passwordSalt);

                user.PasswordHash = passwordHash;
                user.PasswordSalt = passwordSalt;

                await _genericRepository.Add(user);

                return(_mapper.Map <UserClaimsDto>(user));
            }

            return(null);
        }
Exemplo n.º 2
0
        public async Task <User> Add(AddUserDto userDto)
        {
            User user = new User {
                UserName = userDto.Username, Email = userDto.Email
            };

            if (!string.IsNullOrEmpty(userDto.Password))
            {
                byte[] passwordHash, passwordSalt;
                HashSaltHelper.GeneratePasswordHashAndSalt(userDto.Password, out passwordHash, out passwordSalt);

                user.PasswordHash = passwordHash;
                user.PasswordSalt = passwordSalt;
            }

            await _context.Users.AddAsync(user);

            await _context.SaveChangesAsync();

            return(user);
        }