Lancer une exception HttpException renvoie toujours l'erreur HTTP 500?

Je suis en train de lancer un code d'erreur HTTP 403 retour au client. J'ai lu que HttpException est la meilleure façon d'accomplir cela, mais il ne fonctionne pas pour moi. Je jette l'exception de l'intérieur d'une page comme ceci:

throw new HttpException(403,"You must be logged in to access this resource.");

Cependant, cela ne fera que donner une ASP.Net trace de la pile(avec erreur 500) lorsque CustomErrors est éteint. Si CustomErrors est sur, alors ce ne sera pas le rediriger vers la page que j'ai mis à afficher lorsqu'une erreur 403 se produit. Dois-je oublier HttpException et, à la place de tous les HTTP codes de moi-même? Comment puis-je résoudre ce problème?

Les erreurs personnalisées partie de mon Web.Config est: est-ce

<customErrors mode="On" defaultRedirect="GenericErrorPage.html">
      <error statusCode="403" redirect="Forbidden.html" />
</customErrors>

Au lieu de s'Forbidden.html, je vais les faire GenericErrorPage.html

source d'informationauteur Earlz