AuthorizeAttribute
要求されたコントローラーを表示するアクセス権がない場合にユーザーをエラー ページに送信するカスタムを作成しました。
それらをリダイレクトするコードは次のとおりです。
Protected Overrides Sub HandleUnauthorizedRequest(filterContext As AuthorizationContext)
Dim result = New ViewResult()
result.ViewName = "Error"
result.ViewBag.ErrorMessage = "oops, you are not allowed"
filterContext.Result = result
End Sub
~/Shared/Error.vbhtml
本来あるべきように、それらを にリダイレクトします。ただし、ページにはレイアウトのみが読み込まれ、ヘッダー"Error"
が含まれますが、エラー ページのコンテンツは読み込まれません。
エラーページの内容は以下の通りです。
@ModelType System.Web.Mvc.HandleErrorInfo
@Code
ViewData("Title") = "Error"
End Code
@ViewBag.ErrorMessage
<h2>
Sorry, an error occurred while processing your request.
</h2>
「申し訳ありませんが、エラーが発生しました... 」というメッセージがロードされないのはなぜですか?どうすればロードできますか? ありがとうございました。