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了。嘿嘿。

posted on 2012-05-21 15:41  dotNet修行之路  阅读(2231)  评论(2编辑  收藏  举报