Ich rufe über Reflexion eine Methode auf, die eine Ausnahme verursachen kann. Wie kann ich die Ausnahme an meinen Aufrufer weitergeben, ohne dass sie von der Reflexion umschlossen wird?
Ich werfe die InnerException erneut aus, aber dadurch wird die Stapelverfolgung zerstört.
Beispiel-Code:
public void test1()
{
// Throw an exception for testing purposes
throw new ArgumentException("test1");
}
void test2()
{
try
{
MethodInfo mi = typeof(Program).GetMethod("test1");
mi.Invoke(this, null);
}
catch (TargetInvocationException tiex)
{
// Throw the new exception
throw tiex.InnerException;
}
}