Когда в контроллерах выбрасываются определенные исключения, я хочу поймать эти исключения и сделать дополнительную логику.Обработка ошибок MVC в промежуточном программном обеспечении Owin
Мне удалось достичь этого с помощью пользовательского IExceptionFilter, который добавлен в список глобальных фильтров.
Однако я предпочитаю обрабатывать это исключение в пользовательском промежуточном программном обеспечении Owin. Моего промежуточный слой выглядит следующим образом:
try
{
await Next.Invoke(context);
}
catch (AdalSilentTokenAcquisitionException e)
{
//custom logic
}
Этот фрагмент кода не работает, это выглядит как исключение уже пойманное и обрабатывается в MVC. Есть ли способ пропустить обработку исключений из MVC и позволить промежуточному программному обеспечению поймать исключение?
Возможный дубликат [Как отключить \ * все \ * обработка исключений в ASP.NET Web API 2 (чтобы освободить место для моего собственного)?] (Http://stackoverflow.com/questions/34201527/how-do-i-disable-all-exception-handling-in-asp-net-web-api- 2-to-make-room-for) –
Не дубликат - другой вопрос касается Web API 2, это о MVC Framework. Часть этого ответа (промежуточное ПО OWIN) применима, но механизм отключения обработки ошибок по умолчанию отличается. –