Пример #1
0
        public override void OnException(HttpActionExecutedContext context)
        {
            if (context == null || !HttpContext.Current.IsCustomErrorEnabled)
            {
                base.OnException(context);

                return;
            }

            if (context.Exception != null)
            {
                _log.Error(context.Exception, "Unhandled exception");
            }
            else
            {
                _log.Warn("Unhandled exception. Target exception was not found in the ExceptionContext.");
            }

            WebErrorHandler.Handle(HttpContext.Current, context.Exception);

            context.Response = new HttpResponseMessage()
            {
                ReasonPhrase = null,
                Content      = null,
                StatusCode   = (HttpStatusCode)HttpContext.Current.Response.StatusCode
            };
        }
Пример #2
0
        protected void Application_Error()
        {
            var exception = Context.Server.GetLastError();

            if (exception != null)
            {
                _log.Error(exception, "Application error.");

                if (Context.IsCustomErrorEnabled)
                {
                    WebErrorHandler.Handle(Context, exception);
                }
            }

            CompleteRequest();
        }