Включить желтый экран смерти на MVC 3 - PullRequest
5 голосов
/ 09 февраля 2011

Мне пришлось перенять проект MVC 3 у другого разработчика.Первым делом он остановил желтый экран смерти, чтобы все исключения записывались только в файл.Теперь вы получаете только общее сообщение о том, что произошла ошибка.

Я хотел бы снова включить его (поскольку это действительно раздражает необходимость проверять файлы журнала все время) - как мне это сделать.

Я проверил через web.config, но не вижу, где это происходит.

Я попытался сделать customerrors = off, но ничего не сделал.Также убрал глобальный атрибут обработки ошибок, ничего не делал.

При дальнейшем уточнении кажется, что если в контроллере возникает исключение, я получаю желтый экран смерти, но если это происходит в (бритве)) я просто получаю стандартную общую ошибку.

Вы можете увидеть web.config здесь Вы можете увидеть global.asax здесь

Ответы [ 4 ]

5 голосов
/ 18 апреля 2011

Этот вопрос немного старый, но, возможно, это кому-нибудь поможет.В дополнение к настройке <customerErrors mode="Off" />, также установите это в <system.webServer>: <httpErrors errorMode="Detailed" />

<system.webServer>
   <httpErrors errorMode="Detailed"/>
</system.webServer>
5 голосов
/ 09 февраля 2011

Обычно вы устанавливаете это в web.config в элементе customErrors в system.web. Просто попробуйте установить режим = Off:

<customErrors mode="Off" />
3 голосов
/ 09 февраля 2011

В Global.asax вы можете удалить filters.Add(new HandleErrorAttribute()); из public static void RegisterGlobalFilters(GlobalFilterCollection filters).

Как отмечалось в комментариях, проблема была в том, что пользовательский базовый контроллер перекрывал метод OnException.

1 голос
/ 28 августа 2014

Ничего из этого не сработало для меня.Проверьте, не добавил ли кто-нибудь код для устранения ошибки в обработчике ошибок приложения.

    protected void Application_Error(object sender, EventArgs e)
    {
        Exception lastException = Server.GetLastError().GetBaseException();

        Log.Error("Global.asax: WebApplication error", lastException);

        //****Server.ClearError();
    }
...