ASP.NET MVC3权限验证(方法2)
新建一个类BaseController,这个类继承Controller类.并重写Controller里的OnActionExecuting函数:
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
//用户权限集
var listRightID=new List<int>();
var blnNoRight = false;
var strControllerName = filterContext.Controller.ToString();
if (strControllerName.Contains("AController"))
if (!listRightID.Contains(Convert.ToInt32(GlobalMember.EnumRight.BookType)))
blnNoRight = true;
if (strControllerName.Contains("BTypeController"))
if (!listRightID.Contains(Convert.ToInt32(GlobalMember.EnumRight.MembershipType)))
blnNoRight = true;
if (strControllerName.Contains("CController"))
if (!listRightID.Contains(Convert.ToInt32(GlobalMember.EnumRight.Role)))
blnNoRight = true;
//无权限跳转
if(blnNoRight){
Response.Redirect("Main/Error");
}
}
然后在需要用到的Controller继承BaseController就OK了。嘿嘿。