public ActionResult <AuthenticationData> Post([FromBody] RegisterModel registerModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!registerModel.IsValid) { return(BadRequest(new { Error = "Invalid fields" })); } if (!_userAccountRepository.IsUsernameUnique(registerModel.Username)) { return(BadRequest(new { Error = "Username already exists" })); } var userAccount = new UserAccount { Username = registerModel.Username, PasswordHash = _authService.GetPasswordHash(registerModel.Password), Name = registerModel.Name }; _userAccountRepository.Add(userAccount); _userAccountRepository.Commit(); return(_authService.GetAuthenticationData(userAccount.Id)); }