/// <inheritdoc/> public async Task <HostBasePartAuthUser> GetCurrentUser(HostBasePartAuthJobCurrentUserGetInput input) { HostBasePartAuthUser result; var principal = input.Principal; if (principal == null || !principal.Identity.IsAuthenticated) { result = new HostBasePartAuthUser() { UserName = "******", FullName = "Unknown user" }; } else { var userManager = input.UserManager; result = await GetUserByName(principal.Identity.Name, userManager) .CoreBaseExtTaskWithCurrentCulture(false); } if (result == null) { throw new HostBasePartAuthJobCurrentUserGetException(); } return(result); }
) BuildActionCurrentUserGet(HostBasePartAuthJobCurrentUserGetInput input) { input.UserManager = ExtUserManager; var job = AppJobCurrentUserGet; Task <HostBasePartAuthUser> execute() => job.Execute(input); void onSuccess(HostBasePartAuthJobCurrentUserGetResult result) { job.OnSuccess(ExtLogger, result, input); } void onError(Exception ex, HostBasePartAuthJobCurrentUserGetResult result) { job.OnError(ex, ExtLogger, result); } return(execute, onSuccess, onError); }
public async Task <IActionResult> CurrentUserGet([FromQuery] HostBasePartAuthJobCurrentUserGetInput input) { var result = new HostBasePartAuthJobCurrentUserGetResult(); input.Principal = User; var(execute, onSuccess, onError) = MyModel.BuildActionCurrentUserGet(input); try { result.Data = await execute().CoreBaseExtTaskWithCurrentCulture(false); onSuccess(result); } catch (Exception ex) { onError(ex, result); } return(Ok(result)); }