public IActionResult Register(UserForRegisterDto userForRegisterDto) { var userExists = _authService.UserExists(userForRegisterDto.Email); if (!userExists.Success) { return(BadRequest(userExists.Message)); } byte[] passwordHash, passwordSalt; HashingHelper.CreatePasswordHash(userForRegisterDto.Password, out passwordHash, out passwordSalt); var user = new User { About = userForRegisterDto.About, Birthday = userForRegisterDto.Birthday, City = userForRegisterDto.City, Country = userForRegisterDto.Country, Email = userForRegisterDto.Email, LastName = userForRegisterDto.LastName, Name = userForRegisterDto.FirstName, NativeLanguage = userForRegisterDto.NativeLanguage, PasswordHash = passwordHash, PasswordSalt = passwordSalt, PhoneNumber = userForRegisterDto.PhoneNumber, Photo = userForRegisterDto.Photo, // ProfileCreatedDate = userForRegisterDto.ProfileCreatedDate, Sex = userForRegisterDto.Sex, UserName = userForRegisterDto.UserName }; var registerResult = _authService.Register(user, userForRegisterDto.Password); List <UserLanguage> userLanguage = new List <UserLanguage>(); List <UserHobby> userHobby = new List <UserHobby>(); for (int i = 0; i < userForRegisterDto.Languages.Count; i++) { userLanguage.Add(new UserLanguage { User = registerResult.Data, Language = new Language { Id = userForRegisterDto.Languages[i].Id } }); } for (int i = 0; i < userForRegisterDto.Hobbies.Count; i++) { userHobby.Add(new UserHobby { User = registerResult.Data, Hobby = new Hobby { Id = userForRegisterDto.Hobbies[i].Id } }); } _userLanguageService.AddUserLanguage(userLanguage); _userHobbyService.AddUserHobby(userHobby); var result = _authService.CreateAccessToken(user); if (result.Success) { return(Ok(result.Data)); } return(BadRequest(result.Message)); }