Отказ от ответственности: хорошо известно, что catch (ex) { throw ex; }
- это плохая практика. Этот вопрос не.
Во время копирования через исходные источники Microsoft я заметил следующий шаблон в много методов:
try {
...
} catch {
throw;
}
Нет регистрации, нет кода отладки — просто простой catch { throw; }
.
Поскольку, очевидно, ребята из Microsoft должны быть достаточно опытными в использовании С#, что может быть для этого, а не просто удалять блок catch (и оператор try) вообще? Есть ли техническая причина для такого кодирования или это просто стилистический выбор?
Примечание. Я не знаю, насколько это актуально, но все такие экземпляры, которые я мог найти, также содержат блок try-finally
, вложенный внутри предложения try
блока try-catch
.