0

new HttpStatusCodeResult(500)を返すことと、アクションで実際のエラー (ゼロによる除算など) を引き起こすことの違いは何ですか?

ゼロ除算のようなエラーが発生したときにcustomErrorsが正常に機能するため、質問していますが、new HttpStatusCodeResult(500)を返すと、customErrorにページが表示されません

4

1 に答える 1

3

HttpStatusCodeResult実際の HTTP ステータス コードを使用して、アクションの結果をブラウザに通知するためのものです。たとえば、ブラウザーが利用できなくなった画像を読み込もうとすると、404 を送信できます。ユーザーが認証を必要とするリソースにアクセスしようとしている場合は、401 を返すことができます。

多くの場合、コードが原因で発生したエラーは、ブラウザーにエラーを通知する必要はありませんが、代わりに、エラー ページとメッセージを使用してユーザーに通知する必要があります。ただし、このエラー ページは (ほとんどの場合) HTTP ステータス コード 200 でブラウザーに送信されます。

tldr; これらは、異なる意味を持つ 2 つの異なるタイプのエラーであり、異なる受信者を対象としています。

于 2014-05-08T12:54:21.223 に答える