Отключить HandleErrorAttribute минусы MVC

Я хочу передать дополнительные данные из базы данных, когда возникает ошибка 500. Для этого я хочу использовать мой метод ErrorController.Error по умолчанию. Однако из-за следующей строки в Global.asax ошибка по умолчанию перенаправляется на страницу ошибок, не затрагивая мой контроллер:

filters.Add(new HandleErrorAttribute());

Я могу прокомментировать это и настроить следующую конфигурацию:

<system.web>
  <customErrors mode="On">
    <error statusCode="500" redirect="~/Error/Error" />
  </customErrors>
</system.web>

С контроллером:

public class ErrorController : Controller
{
    public ViewResult Error()
    {
       var model = GetDbData();
       return View("Error", model);
    }
}

Так что это работает, но меня беспокоит, есть ли у этого подхода некоторые недостатки? Если это изменит способ работы приложения или создаст какие-либо проблемы с безопасностью?

0 ответов

Другие вопросы по тегам