ビュー「x」から、ユーザーが「アイテムの編集」をクリックすると、「編集」ページをレンダリングするコントローラーアクションは、そのページに対するユーザーの権限もチェックします。
私がやろうとしているのは、それらのアクセス許可を確認することです。ユーザーがそれらのアクセス許可を持っていない場合は、その「X」ビューにエラーメッセージを表示し、コントローラーのアクションをキャンセルします。
現在、私のコードは次のようになっています。
[HttpPost]
public virtual ActionResult EditPage(int? itemId)
{
var model = new EditPageModel();
if (itemId.HasValue)
{
var obj = new Item(itemId.Value);
// Check for user's edit permission before we do anything else.
var request = SecurityRequest.Create(obj, Item_Edit);
Request.Execute(() => SecurityManager.ValidatePermissions(request));
if (!request.IsValid(Item_Edit))
{
//skip the rest and return error
Response.StatusCode = (int)HttpStatusCode.Forbidden;
// Need Help Here!!!
}
// Mode code executes
return View(model);
}