¿Por qué es UnhandledExceptionEventArgs.ExceptionObject
un objeto y no un Exception
?
Me estoy apegando a AppDomain.UnhandledException
.
Me gustaría echar UnhandledExceptionEventArgs.ExceptionObject
un Exception
e interogarlo.
Y con esto en mente, ¿alguna vez será nulo?
La documentación de MSDN no es muy útil.
Obtiene el objeto de excepción no controlado.
System.Exception
. La excepción podría haber sido el resultado de un lenguaje no compatible con CLI que decide lanzar unSystem.Int32
. Las versiones más nuevas del CLR lo ajustarán automáticamente deSystem.Exception
todos modos, pero esta es una configuración que se puede deshabilitartry-catch
bloque no permite atrapar objetos que no son de excepción?Además de lo que Jared ya mencionó, puede transmitir de forma segura
Exception
en .NET Framework 2.0 y versiones posteriores siRuntimeCompatibilityAttribute(WrapNonExceptionThrows=true)
se ha aplicado a su ensamblaje (los compiladores de C # y VB lo agregarán automáticamente).Cuando se ha aplicado este atributo, se incluirán "excepciones" que no sean de excepción
RuntimeWrappedException
.fuente