В теге customErrors в моем файле web.config я указываю на контроллер. В моем контроллере я перенаправляюсь на страницу внешней ошибки, которая используется несколькими приложениями.
<customErrors defaultRedirect="~/Error/ServerError" mode="On">
Мой контроллер:
public class ErrorController : Controller
{
public ActionResult ServerError()
{
return Redirect("/Systems/ASPNETErrorHandling/ErrorPage.aspx");
}
public ActionResult ErrorTest()
{
throw new Exception("testing error handling");
}
}
Я вызываю Error / ErrorTest, чтобы проверить обработку ошибок. Но он всегда перенаправляет на Views / Shared / Error.cshtml вместо перенаправления на указанный мной контроллер.
Как мне заставить asp.net mvc соблюдать путь defaultRedirect в моих настройках customErrors?
UDPATE: я также использую ELMAH и переопределяю атрибут HandleErrorAttribute, как описано в этот пост. Я вижу из .Net Reflector, что базовый атрибут HandleErrorAttribute устанавливает ошибку в качестве представления. Я не думаю, что могу что-то сделать с перенаправлением на Error.cshtml или какое-то другое представление.