Al llamar a un método a través de methodInfo.Invoke, si se lanza una excepción, no parece propagarse a mis catch blocks.Excepciones que no se propagan desde una llamada a un método reflejado en C#
object value;
try
{
value = myMethod.Invoke(null, parameters);//program crashes with uncaught exception
}
catch
{
throw new Exception("Caught!");//never executed
}
La excepción particular, este método está levantando es KeyNotFoundException, pero eso no debería importar porque yo estoy poniendo todo lo ¿verdad?
El mensaje de error en particular que recibo de Visual Studio es
KeyNotFoundException was unhandled by user code
mientras que normalmente el mensaje decía
KeyNotFoundException was unhandled
si la llamada no era una invocación reflejada.
Podría simplemente hacer que el método verifique si la clave está allí, y si no devuelve nulo, pero parece preferible utilizar el manejo de excepciones. ¿Hay alguna forma de propagar excepciones desde una llamada a un método reflejado?
¿Qué es myMethod? –
Hola Lucina, acabo de secuestrar esta publicación para hacerte saber que en TeX.SX, generalmente es mejor auto-responder que eliminar [tu pregunta] (http://tex.stackexchange.com/q/255629/ 17423). Tenía mucha curiosidad sobre cómo se vería el tipo de letra kaomoji de TeX :) y estoy seguro de que otros también lo estaban. Eliminaré este comentario en un día o más (o tan pronto como me haga saber que lo ha visto). Solo quería informarle. :) –