Warum Ausnahmen erneut auslösen?

Ich habe den folgenden Code schon oft gesehen:

try
{
    ... // some code
}
catch (Exception ex)
{
    ... // Do something
    throw new CustomException(ex);

    // or
    // throw;

    // or
    // throw ex;
}

Können Sie bitte den Zweck des erneuten Auslösens einer Ausnahme erläutern? Entspricht es einem Muster / Best Practice bei der Ausnahmebehandlung? (Ich habe irgendwo gelesen, dass es "Caller Inform" Muster heißt?)

Antworten auf die Frage(13)

Ihre Antwort auf die Frage