Я сейчас задаю себе несколько вопросов об обработке исключений и обработчиках событий, и я надеюсь, что некоторые из вас помогут мне.
Я начну объяснять, чего бы я хотел достичь в своем приложении на c #:
У меня есть метод верхнего уровня (назовем его основным методом). Этот метод вызывает асинхронный метод (который называется connect), который подключается к FTP-серверу.
С этим соединением связан объект EventHandler, а при успешном соединении вызывается метод обратного вызова.
Я хочу обработать исключения, которые могут быть запущены в течение всего процесса. Поэтому я хотел бы поймать это в методе верхнего уровня. Он отлично работает для исключений, запускаемых методом connect (который вызывается внутри метода верхнего уровня).
Однако он не работает для исключений, вызываемых внутри метода «обратного вызова»: метод верхнего уровня не перехватывает их и выполнение завершается неудачей.
Что я могу сделать, чтобы эти исключения были обнаружены методом верхнего уровня? Я не хочу обрабатывать эти исключения в обратном вызове.