Я пытаюсь выбросить код ошибки HTTP 403 на клиенте. Я читал, что HttpException - самый чистый способ выполнить это, но он не работает для меня. Я исключаю исключение из такой страницы:
throw new HttpException(403,"You must be logged in to access this resource.");
Однако это приведет только к стандартной трассировке стека ASP.Net(с ошибкой 500), когда CustomErrors выключен. Если CustomErrors включен, то это не будет перенаправляться на страницу, на которую у меня установлена настройка, когда возникает ошибка 403. Должен ли я забыть о HttpException и вместо этого установить все HTTP-коды? Как это исправить?
Собственная часть ошибок моего Web.Config такова:
<customErrors mode="On" defaultRedirect="GenericErrorPage.html">
<error statusCode="403" redirect="Forbidden.html" />
</customErrors>
Вместо того, чтобы получать Forbidden.html, я получу GenericErrorPage.html