У меня есть перенаправление на функцию global.asax application_error. Когда я отлаживаю, каждое исключение обрабатывается функцией. Когда я запускаю приложение на веб-сервере, появляется страница с ошибкой IIS по умолчанию. У меня IIS7 и Visual Studio 2005.
С наилучшими пожеланиями!
Ответ 1 · Maslow
На самом деле IIS также может отображать страницы с ошибками четвертого типа. Эта страница будет возвращена, когда вы настроите HTTP-ошибки для использования настраиваемой страницы ошибок, и проблема возникает, когда IIS пытается ее отобразить.
Когда IIS получает запрос на указанную страницу в демонстрационном приложении, он передает его среде выполнения ASP.NET для обработки. Среда выполнения генерирует ответ, который затем проверяет IIS. IIS потенциально примет меры и заменит этот ответ, если ответ имеет код состояния HTTP, который является кодом состояния ошибки. - Если для existingResponse задано значение PassThrough, IIS не выполняет никаких действий, и ответ возвращается без изменений. - Если для параметра existingResponse задано значение "Заменить", IIS заменяет ответ своим собственным в соответствии со значением атрибута errorMode, поэтому он либо заменяет его подробной, базовой или настраиваемой страницей ошибки. - Если для параметра existingResponse установлено значение Auto, IIS заменяет ответ, сгенерированный ASP.NET, своим собственным, если не установлен флаг SetStatus. (Об этом флаге я расскажу позже в этом посте.)
http://perspectivespace.com/error-handling-in-aspnet-mvc-3-part-2-custom