public async Task <ActionResult <LoginResponse> > Register([FromBody] RegistrationRequest model) { var user = new ApplicationUser(); user.UserName = model.Email; user.Email = model.Email; user.FirstName = model.FirstName; user.LastName = model.LastName; user.DateOfBirth = model.DateOfBirth; var actionResultError = await CreateUserAsync(user, model.Password); if (actionResultError != null) { return(actionResultError); } // Register as locked if enabled // if (_appConfig.NewUserAsLocked) if (_signInManager.Options.SignIn.RequireConfirmedEmail) { // var lockoutEndDate = new DateTime(2999,01,01); // await _userManager.SetLockoutEnabledAsync(userIdentity, true); // await _userManager.SetLockoutEndDateAsync(userIdentity, lockoutEndDate); _emailService.ConfirmRegister(model.UrlCallbackConfirmation, user); var authModel = LoginResponse.Generate(_signInManager.Options.SignIn); return(this.OkCreated(authModel)); } else { var authModel = await LoginResponse.GenerateWithTokenAsync(_jwtFactory, _appConfig, user); if (authModel == null) { var pb = new ModelStateBuilder <RegistrationRequest>(this); pb.SetFieldError(f => f.Email, ProblemDetailsFieldType.JwtError); return(this.BadRequest()); } return(this.OkCreated(authModel)); } }