Есть программа для работы с базой данных на локальном компьютере. Есть проект Data access layer`а и клиентского приложения. В данном клиентском приложении я ловлю исключения прямо в обработчику нажатия кнопки, при вызове методов из DAL. Правильно ли так делать? Если нет, то как и где правильно это делать? Какие есть правило хорошего тона ловли исключений? Покидайте хорошие статьи если есть таковы. Заранее благодарен за помощь. UPD------ Кстати, в MVC исключения, связанные с некорректными входящими данными, допустим, на текстбокс, правильно ловить во View?
Ответ
Общие советы: Вынесите логику (в том числе обработку исключений) из обработчиков событий в отдельные методы, в обработчике оставьте только вызов метода (Разделение UI и логики, повторное использование кода). Не перехватывайте все исключения. Обычно всё, что мы можем сделать с неизвестным исключением - записать его в лог. Поэтому вместо перехвата исключений в каждом методе, лучше сделать общий обработчик, например, так Application.ThreadException - событие (для WinForms) Обработайте ожидаемые исключения. Например, при соединении с базой вполне возможно, что SQL Server недоступен. Отличная статья на CodeProject по обработке исключений (на английском).
Комментариев нет:
Отправить комментарий