1
私はasp.net mvc with razorを使用しています。管理者専用のリンクを非表示にするにはどうすればよいですか?管理者を非表示にする
私はasp.net mvc with razorを使用しています。管理者専用のリンクを非表示にするにはどうすればよいですか?管理者を非表示にする
あなたはあなたのビューモデルにboolean型プロパティを宣言することができます:
public class MyViewModel
{
public bool IsAdmin { get; set; }
... some other model properties
}
とあなたの視野の内側:
@if (Model.IsAdmin)
{
<!-- show the link that only administrators are supposed to see -->
@Html.ActionLink("Do something very special", "Bar")
}
と、このビューをレンダリングするコントローラのアクション内部もちろん、あなたは、このビューモデルを投入するだろう:
[Authorize]
public ActionResult Foo()
{
var model = new MyViewModel
{
IsAdmin = User.IsInRole("Admin")
};
return View(model);
}
明らかに、管理者だけが行えるバーアクションnvokeもAuthorize
属性で飾られている必要があります。
[Authorize(Roles = "Admin")]
public ActionResult Bar()
{
...
}
誰かが管理者であるかどうかを判断していますか? –