У меня есть приложение mvc 3 с поддержкой журналирования EF 4 и ELMAH.
Я нашел несколько статей об обработке исключений в сети, но почему-то ни у кого из них не получилось.
Итак, допустим, что в настоящее время у меня нет никаких блоков try catc в моем приложении, но настроена поддержка ведения журнала ELMAH.
Итак, вот что я нашел:
Ваша система исправнауправление исключениями, если:
1. При возникновении ошибки не отображаются ненужные описания технических ошибок, скорее, извинитесь перед пользователем с экраном, что что-то пошло не так, и он может вернуться в систему.
2.При возникновении ошибки он немедленно уведомляет технические группы с подробной информацией об устранении неполадок, а также с подробным описанием ошибок.
3. Управление исключениями осуществляется централизованно и управляемо, без необходимостиtry..catch ... throw разбросаны по всей базе кода.
Первое и второе я понимаю.Проблема с третьим.Итак, возникло несколько вопросов:
1.Как вы бы реализовали третье требование в mvc 3?
2. Соответствует ли HandleErrorAttribute в mvc 3 третьему условию и не влияет на ведение журнала ELMAH?
3.Если я реализую HandleErrorAttribute ... мне все еще нужно попробовать операторы catch в моделях, в которые я звоню, скажем db.SaveChanges () на EF 4?
Может быть, это основной вопрос, ноЯ не нашел действительно хорошей помощи в сети, которая могла бы объяснить эти проблемы.