В настоящее время я использую Application_Error
в global.asax
для обработки исключений Web API, передачи их в журнал ошибок и их регистрации.
void Application_Error(object sender, EventArgs e)
{
if (Server.GetLastError() != null)
{
exceptionController.Log(Server.GetLastError());
Server.ClearError();
}
}
Он перехватывает некоторые исключения, но не все - например, 404 ошибки от сервера и т. Д. Как я могу перехватить больше исключений самостоятельно (что, я предполагаю, будет означать переопределение обработки исключений по умолчанию в ASP.Net). Есть ли способ сделать все это из global.asax
, или есть что-то еще? Я хотел бы избежать блоков try catch finally
на всех моих контроллерах.
Моды - существует миллион тем об этом, но есть также миллион одинаково уникальных ответов из разных периодов времени. Я так растерялся, что почувствовал необходимость еще раз спросить в 2018 году.