Можно ли каким-либо образом захватить обработанные исключения, когда CreateErrorResponse() используется для возврата ответа об ошибке с помощью методов API? В настоящее время я зарегистрировал простой глобальный регистратор исключений для любых исключений, однако для некоторых ответов API, включая атрибут Model Filter, я CreateErrorResponse() для возврата ответов об ошибках, но это не для входа в метод Log() в Global Exception Logger . Пример использования CreateErrorResponse в методе API:
return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);
Глобальный регистратор исключений:
public class GlobalExceptionLogger : ExceptionLogger
{
private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public override void Log(ExceptionLoggerContext context)
{
log.Error(context.Exception);
}
}
Единственный способ вызвать метод Log() — это вместо использования CreateErrorResponse создать исключение. Это правильно?