(почему я вообще должен об этом упоминать...)
Но мой вопрос отличается тем, что я называю «выбросить ex» в другом божественном методе обработки ошибок.
Код: Выделить всё
public class Program {
public static void Main(string[] args) {
try {
// something
} catch (Exception ex) {
HandleException(ex);
}
}
private static void HandleException(Exception ex) {
if (ex is ThreadAbortException) {
// ignore then,
return;
}
if (ex is ArgumentOutOfRangeException) {
// Log then,
throw ex;
}
if (ex is InvalidOperationException) {
// Show message then,
throw ex;
}
// and so on.
}
}
Но в приведенном выше упрощенном коде все исключения проходят через HandleException
Выдает ли ex; тот же эффект, что и вызов throw при вызове внутри HandleException?>