He estado luchando con el manejo de eventos en hilos de Backgroundworker.Manejo de eventos de trabajador de fondo
Toda la documentación que he encontrado me hace creer que cuando un controlador de eventos DoWork arroja una excepción, esa excepción debe tratarse en el manejador RunWorkerCompleted y esa excepción estará disponible en la propiedad Error de RunWorkerCompletedEventArgs.
Esto está bien, pero durante el tiempo de depuración siempre veo una excepción no controlada por mensaje de código de usuario. Esto me hace creer que hay un problema con mi enfoque.
¿Qué pasos debo seguir para resolver esto?
Saludos, Jonathan
¿Por qué necesita hacer esto? Porque así es como funciona BackgroundWorker. Mucho más fácil de manejar el error en el hilo de llamada que en el hilo de trabajo. Pero cuando se depura, la otra forma es verdadera ya que tiene acceso a todas las variables locales. – Samuel
No creo que "así es como funciona BackgroundWorker" es una respuesta satisfactoria. Parece que ve todas las excepciones como indicativas de errores de codificación, eso es verdad solo algunas veces. Si quisiera que el depurador rompiera una excepción manejada, activaría excepciones de primera oportunidad o establecería un punto de interrupción. –