Wednesday, May 16, 2012

Using Action Filters on MVC C# using query String

Im using class name RightCheckerAttribute to check user permission in MVC3 application...
So the RightCheckerAttribute class is like this...



    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);
}


So in Method i applying this have head as..



[RightChecker (isAdmin=true)]



Im Executing this method as this..



http://localhost:5576/Singer/DeleteSinger?isAdmin=true



The problem is whether I'm passing true or false... I got result variable as false... And I'm getting:




Exception[Null Object references]...






No comments:

Post a Comment