Beispiel #1
0
        public void OnException(ExceptionContext context)
        {
            logger?.LogError(new EventId(), context.Exception, "An unhandled exception occurred during the request");

            var exception = WebApiExceptionFactory.GetException(context.Exception);

            context.ExceptionHandled = true;
            context.Result           = new ObjectResult(new ResponseError(exception.GetError()))
            {
                StatusCode = exception.GetStatusCode()
            };
        }
Beispiel #2
0
        private async Task WriteExceptionResponseAsync(HttpContext context, Exception ex)
        {
            logger?.LogError(new EventId(), ex, "An unhandled exception occurred during the request");

            var exception = WebApiExceptionFactory.GetException(ex);
            var message   = JsonConvert.SerializeObject(new ResponseError(exception.GetError()), settings);

            context.Response.StatusCode    = exception.GetStatusCode();
            context.Response.ContentLength = Encoding.UTF8.GetBytes(message).Length;
            context.Response.ContentType   = "application/json; charset=utf-8";

            await context.Response.WriteAsync(message, Encoding.UTF8);
        }