#c# #asp.net-mvc #custom-error-pages
#c# #asp.net-mvc #пользовательские страницы ошибок
Вопрос:
У меня есть старый asp.net веб-сайт mvc 5 (.NET 4.5), построенный на сторонней библиотеке с закрытым исходным кодом. В web.config моего веб-сайта я попытался включить пользовательские ошибки:
<customErrors mode="On" />
Вместо отображения моей страницы ошибок появилась пользовательская страница ошибок из библиотеки. Просматривая библиотеку с помощью отражателя, я нашел класс, который выглядит следующим образом:
[GeneratedCode("RazorGenerator", "2.0.0.0")]
[PageVirtualPath("~/Views/Shared/Error.cshtml")]
public class Error : WebViewPage<HandleErrorInfo>
{
public override void Execute()
{
...
}
}
Метод execute содержит HTML для содержимого страницы.
Достаточно ли одного этого класса, чтобы переопределить поведение пользовательской ошибки, или есть еще какая-то конфигурация, скрывающаяся в другом месте?
Есть ли какой-нибудь способ, которым я мог бы программно переопределить поведение пользовательской ошибки своей собственной ошибкой?
Ответ №1:
Вы можете вернуть свою страницу ошибок, как показано ниже, из вашего метода контроллера;
return Redirect("/error");
Комментарии:
1. Я надеюсь показать страницу ошибок для неперехваченных ошибок, например, когда для действия предоставлены неправильные параметры.