Обрабатывать глобальное исключение в консольном приложении, когда исключение поступает из другого метода другого файла класса в основной метод класса программы
у нас есть одно консольное приложение, в котором у нас есть другая библиотека классов, которая содержит все бизнес-функции, в которых мы используем основной метод программного файла, в который мы получаем ошибки, но который не в состоянии обработать.
Я нахожу ниже код для добавления в файл программы для обработки исключения и создания обработчика MyExceptionHandler.
CurrentDomain домен = домен приложений.CurrentDomain;
currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyExceptionHandler);
В моем проекте это работает только тогда, когда у меня есть исключение в основном методе файла программы, но когда у меня есть исключение из метода класса бизнес-функций, он его не обрабатывает.
Пожалуйста, предложите лучший способ обработки глобального исключения.
Что я уже пробовал:
CurrentDomain домен = домен приложений.CurrentDomain;
currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyExceptionHandler);
Graeme_Grant
Вы пробовали обернуть вызов в lib в try ... catch?
Poonam Patel 10678835
нет, мы не хотим иметь дело с уловом.
Graeme_Grant
Вам нужно поймать исключение в какой-то момент с помощью try...catch, иначе исключение будет пузыриться до вашего UnhandledException. Вот для чего нужна попытка...поймать.
CHill60
Виртуальная 5 для этого комментария :-)
Graeme_Grant
:) "Сопротивление бесполезно- ...Борг...
CHill60
Привидение! Я сейчас смотрю "Звездный путь"! (Мореплаватель)
Graeme_Grant
Ржунимагу!
johannesnestler
выполняются ли функции в отдельном потоке?
Poonam Patel 10678835
да, есть только одна нить.
Tomas Takac
Возможно, вы захотите справиться с TaskScheduler.UnobservedTaskException тоже.