Exemplo n.º 1
0
        public async Task Invoke(HttpContext context)
        {
            context.Response.StatusCode = (int)HttpStatusCode.InternalServerError;

            Exception exception = context.Features.Get <IExceptionHandlerFeature>()?.Error;

            if (exception == null)
            {
                return;
            }

            TweezersErrorBody error = new TweezersErrorBody
            {
                Message    = exception.Message,
                StackTrace = FetchStackTrace(exception),
                Method     = exception.TargetSite.Name,
                Code       = context.Response.StatusCode
            };

            context.Response.ContentType = "application/json";
            using (StreamWriter writer = new StreamWriter(context.Response.Body))
            {
                new JsonSerializer().Serialize(writer, error);

                await writer.FlushAsync().ConfigureAwait(false);
            }
        }
Exemplo n.º 2
0
        protected IActionResult Get()
        {
            TweezersErrorBody errorBody = new TweezersErrorBody()
            {
                Message = "Internal Server Error, Check logs"
            };

            return(StatusCode(500, errorBody));
        }