Показать хорошее представление об ошибках в ASP.NET MVC и по-прежнему заставлять ELMAH отправлять сообщение
Я использую фильтр из MvcContrib, который вызывает хорошие страницы ошибок, мои собственные представления, которые будут отображаться при возникновении ошибки. Проблема в том, что когда это происходит, ELMAH не отправляет мне электронное письмо о проблеме, и я все еще хотел бы знать, что что-то пошло не так.
Кажется, ключ находится в ExceptionContext в исключении Handled. Когда установлено значение true, ELMAH не отправляет электронное письмо, и я получаю свое собственное представление, если я устанавливаю значение false, ELMAH отправляет сообщение, но я получаю неприятное сообщение от IIS. Любые идеи, как показать красивый вид и получить электронную почту?
3 ответа
Дайте это посмотреть.
Как заставить ELMAH работать с атрибутом ASP.NET MVC [HandleError]?
Вам нужно добавить обработчик перехвата, как тот, о котором писал Скотт Хансельман. Я назвал мой HandleErrorWithElmahAttribute. Это называется. Записывает ошибку с ELMAH. Очищает все и дает хорошую страницу. Вам просто нужно убедиться, что ваш обработчик ошибок фильтра действий ELMAH получает на порядок меньше, чем ваш фильтр действий ошибок MvcContrib.
Хотя это и не относится к ELMAH, возможно, вы захотите взглянуть на этот пост в блоге о глобальной обработке исключений в ASP.NET MVC.