Например, если я открываю файл, я знаю, что FileNotFoundException мог бы произойти, или если я преобразовываю Строку для удвоения, FormatException может произойти. Очевидно, если метод делает обоих, оба могут быть повышены.
Существует ли способ быстро видеть все возможные исключения, повышенные методом хотя? Отслеживание его самостоятельно кажется подверженным ошибкам.
Это не встроено в VS. Однако есть сторонние инструменты, например Redgate's охотник за исключениями.
Edit Я не работаю в RG, но являюсь поклонником их продуктов. Я пробовал именно этот, но в итоге мы его не купили.
Если мне не изменяет память, подсказка intellisense должна иметь список исключений, который метод может выдавать. Вы также можете открыть вкладку браузера в Visual Studio, указав на MSDN, например: http://msdn.microsoft.com/en-us/library/b9skfh7s.aspx#ddueExceptionsToggle
Не существует конкретного способа найти все исключения в части кода, если только у вас нет возможности выполнить все возможные ветви в той части кода, которую вы исследуете. Хотя инструменты могут быть способны оценить вероятность возникновения ошибок, вы все равно столкнетесь с ситуациями, которые эти инструменты не смогут поймать. Хотя я не говорю, что нет причин для их использования, вы все равно должны написать код таким образом, чтобы обработать ошибки, которые инструмент может не уловить. Я видел, как подобные инструменты использовались вместо хорошего тестирования и практики кодирования.
Также в некоторых случаях исключения - хорошая вещь. Некоторые из самых сложных и сильно влияющих ошибок, которые я когда-либо находил, связаны с тем, что разработчики обрабатывают ошибки таким образом, что программа продолжается, но уже не находится в состоянии, которое ожидает любой будущий вызванный код. просто мой .02
.Я думаю, что Resharper делает это, если мне не изменяет память. Посмотрите на Pex, это тоже может вас заинтересовать.