Ich habe zwei Funktionen, die unterschiedlich genug Logik haben, aber so ziemlich die gleiche Ausnahmebehandlung:Was ist die beste Möglichkeit, die Ausnahmebehandlungslogik in C# erneut zu verwenden?
public void DoIt1 // DoIt2 has different logic but same exception handling
{
try
... DoIt1 logic
catch (MySpecialException myEx)
{
Debug.WriteLine(myEx.MyErrorString);
throw;
}
catch (Exception e)
{
Debug.WriteLine(e.ToString());
throw;
}
}
Es ist nicht möglich, einen einzigen Eintrittspunkt für DoIt1 und DoIt2 zu verwenden, da sie von außen aufgerufen werden. Ist Copy/Pase (für den Ausnahmeblock) der beste Ansatz?
Überladungen machen in der Laufzeit nichts, und es ist genau das, was in jedem DoIt vermieden werden muss. –