public async Task <IActionResult> CreateUser([FromBody] CreateUser.CreateUserRequest createUserRequest) { var user = new ApplicationUser { UserName = createUserRequest.Email, Email = createUserRequest.Email }; var result = await _userManager.CreateAsync(user, createUserRequest.Password); if (result.Succeeded) { _logger.LogInformation("User created a new account with password."); var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); return(Ok(new ApiResult <CreateUser.CreateUserResponse> { Data = new CreateUser.CreateUserResponse { Id = user.Id, ConfirmEmailCode = code, RequireConfirmedAccount = _userManager.Options.SignIn.RequireConfirmedAccount } })); } return(BadRequest(new ApiResult <CreateUser.CreateUserResponse> { ApiErrors = result.Errors.Select(e => new ApiError { Code = e.Code, Message = e.Description }).ToArray() })); }
/// <summary> /// Creates a new user. /// </summary> /// <param name="privacyOptions">Privacy options.</param> public void CreateUser(Dictionary <string, bool> privacyOptions = null) { if (privacyOptions == null) { privacyOptions = new Dictionary <string, bool>(); } var req = new CreateUser.CreateUserRequest(); req.privacySettings = privacyOptions; var installId = ConfigController.InstallationId; // create the user locally and send the creation request to the server var tempUserId = ClientCoreInstance.CreateEntity <CreateUser, CreateUser.CreateUserRequest>(req, installId).Id; // Set the created user Active ChangeCurrentUser(tempUserId); }