エラー時に表示される ASP.NET MVC 3 アプリケーションにカスタム/http エラーを設定しました。私Web.Config
のhttpErrors
セクションは次のようになります。
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="400" />
<remove statusCode="403" />
<remove statusCode="404" />
<remove statusCode="408" />
<remove statusCode="500" />
<remove statusCode="503" />
<error statusCode="400" responseMode="ExecuteURL" path="/Error/BadRequest" />
<error statusCode="403" responseMode="ExecuteURL" path="/Error/Forbidden" />
<error statusCode="404" responseMode="ExecuteURL" path="/Error/NotFound" />
<error statusCode="408" responseMode="ExecuteURL" path="/Error/Timeout" />
<error statusCode="500" responseMode="ExecuteURL" path="/Error/InternalServerError" />
<error statusCode="503" responseMode="ExecuteURL" path="/Error/ServiceUnavailable" />
</httpErrors>
customerErrors
MVC と IIS 7.5 ではうまく動作しないため、設定していません。
コードで例外が発生した場合、すべて正常に動作します。
ただし、ビューで例外がスローされると、~/Views/Shared/Error.cshtml
私が持っていないデフォルトを表示しようとします。
エラーをスローする可能性のあるビューは次のようになります。
@Html.Partial("TemplateSection", Model.PreContent)
そして想像PreContent
はnullであり、TemplateSection
これを行うことで値を表示するときにビューが失敗します:@Model.Name