public IActionResult GetClientError(ActionContext actionContext, IClientErrorActionResult clientError) { IMyProblemDetails problemDetails; if (clientError is IMyProblemDetailsActionResult problemDetailsActionResult) { problemDetails = problemDetailsActionResult.ProblemDetails; } else { problemDetails = new MyProblemDetails() { Status = clientError.StatusCode, Type = "about:blank", }; if (clientError.StatusCode is int statusCode && _options.ClientErrorMapping.TryGetValue(statusCode, out var errorData)) { problemDetails.Title = errorData.Title; problemDetails.Type = errorData.Link; } } return(MyProblemDetailsActionResult.GetActionResult(actionContext, problemDetails)); }
public Task ExecuteResultAsync(ActionContext context) { var actionResult = MyProblemDetailsActionResult.GetActionResult(context, this.ProblemDetails); return(actionResult.ExecuteResultAsync(context)); }