methodInfo.Invoke経由でメソッドを呼び出すときに、例外がスローされた場合、それは自分のcatchブロックまで伝播していないようです。cで反映されたメソッド呼び出しから例外が伝播しない#
object value;
try
{
value = myMethod.Invoke(null, parameters);//program crashes with uncaught exception
}
catch
{
throw new Exception("Caught!");//never executed
}
この方法が上げている特定の例外はKeyNotFoundExceptionですが、私はすべて権利をキャッチしていますので、それは問題ではないでしょうか?
コールが反映呼び出しでなかった場合は、通常、メッセージは
KeyNotFoundException was unhandled
を言うのに対し、私は、Visual Studioから取得する特定のエラーメッセージが
KeyNotFoundException was unhandled by user code
です。
私はちょうど彼らがそこにキーがあるかどうかを確認するメソッドをチェックすることができますし、nullを返していない場合は例外処理を使用することが望ましいようです。反射メソッド呼び出しから例外を伝播する方法はありますか?
myMethodとは何ですか? –
こんにちはLucina、私はちょうどあなたのTeX.SXで、それは[あなたの質問](http://tex.stackexchange.com/q/255629/)を削除するより自己解決する方が良いことを知らせるためにこの投稿をハイジャックしています17423)。私は、カオモジがTeXによってタイプセットされるように見えるのは非常に興味がありました:)そして私は他人もそうだったと確信しています。私はこのコメントを1日ほどで削除します(またはあなたがそれを見たことを知らせるとすぐに) - 私はちょうどあなたに知らせたいと思っていました。 :) –