Где <customErrors> в web.config для приложений MVC?

Я пытаюсь реализовать пользовательскую обработку ошибок в моем приложении MVC 4. Я не уверен, где в моем web.config предполагается <customErrors>, и общая информация, которую мне нужно включить в нее.

Ответ 1

<customErrors> входит внутрь <system.web>:

<configuration>
    <system.web>
        <customErrors mode="RemoteOnly">
            <error statusCode="500"
                   redirect="~/Error/InternalServer" />
            <error statusCode="404"
                   redirect="~/Error/NotFound" />
        </customErrors>
    </system.web>
</configuration>

Измените значения атрибутов redirect в соответствии с вашими маршрутами. Вы также можете реализовать переадресацию catch-all, добавив атрибут defaultRedirect к элементу customErrors. См. эту статью MSDN для получения дополнительной информации.

Ответ 2

В файле web.config в корневом каталоге

<system.web>
<customErrors mode="On">
</customErrors>

Создайте общую папку в папке просмотра и создайте представление в общей папке для отображения сообщения об ошибке

в действии используйте это [HandleError] как

[HandleError]
    public ActionResult Errors()
    {
        throw new Exception();
    }