0 голосов
спросил от в категории C
Да, конечно, вы можете иметь несколько блоков catch в C #. Начиная с C # 6 теперь у вас есть фильтры исключений (у VB.NET это было длительное время). См. Раздел «Особенности уровня выписки» здесь: [#^ #].

Я настоятельно рекомендую вам изучить эти руководства по обработке исключений из MS: [#^ #].

F-ES Sitecore показал вам хороший пример здесь, но есть одна «особенность» этого примера, я думаю, что это не хорошая практика: наличие «универсального уловки», собирается «проглотить» любой тип исключения, которого вы не поймали.

imho, хорошая практика требует, чтобы вы не менее log проглотить «. И, imho, лучшая практика заключается в том, чтобы «никогда не проглатывать», но повторно бросайте, если вы должны использовать «catch-all».

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
0 голосов
ответил от
Если вы хотите использовать несколько блоков catch, тип исключения должен быть другим

catch (ExceptionType1 a) { } catch (ExceptionType2 b) { } catch (ApplicationException c) { } catch (Exception d) { }

< br> Когда генерируется исключение, он проверяет, является ли исключение типом ExceptionType1, и если нет, то он перейдет к следующему catch и т. д. вниз по списку, пока не найдет соответствующий тип.

Категории

Добро пожаловать на сайт DraftingCode Q&A (ИТ ответы), где вы можете задавать вопросы и получать ответы от других членов сообщества.

Связанных вопросов не найдено

...