Упрощение - я создал пустой лямбда-проект AWS с .net CORE:
Это пустой проект лямбда-функции по умолчанию:
Я хочу перехватить все исключения в приложении по всему миру.
Итак, я создал метод, который генерирует исключение,и добавил глобальный обработчик приложения:
Полный код:
public class Function
{
void CreateException()
{
var z = 0;
var a = 2 / z;
Console.Write(a);
}
public Function()
{
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
}
public void FunctionHandler(object input, ILambdaContext context)
{
CreateException();
}
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
// � It never gets here
}
}
Проблема состоит в том, что возникает исключение, но оно никогда не срабатывает CurrentDomain_UnhandledException
Вопрос:
Это правильный способ отловить глобальные исключения?и почему CurrentDomain_UnhandledException
не вызывается, когда есть необработанное исключение?