クラス名RightCheckerAttributeを使用して、MVC3アプリケーションでユーザー権限をチェックしています...したがって、RightCheckerAttributeクラスは次のようになります...
public bool isAdmin { get; set; }
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContextBase context = filterContext.HttpContext;
bool result = Convert.ToBoolean(context.Request.QueryString["isAdmin"].ToString());
if (isAdmin != result)
{
RouteValueDictionary redirecttargetDictionary = new RouteValueDictionary();
redirecttargetDictionary.Add("action", "NoPermission");
redirecttargetDictionary.Add("controller","Singer");
filterContext.Result = new RedirectToRouteResult(redirecttargetDictionary);
}
//base.OnActionExecuting(filterContext);
}
したがって、これを適用するメソッドでは、頭が..
[RightChecker (isAdmin=true)]
私はこのメソッドをこのように実行しています..
http://localhost:5576/Singer/DeleteSinger?isAdmin=true
問題は、true または false を渡すかどうかです...結果変数を false として取得しました...そして、次のようになります。
例外[Null オブジェクト参照]...