public static Privilege GetPrivilege()
 {
     var obj = CallContext.GetData("privilege");
     if(obj==null)
     {
         obj = new Privilege(new PrivilegeManagement.PrivilegeBase());
         CallContext.SetData("privilege", obj);
     }
     return (Privilege)obj;
 }
 protected override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     privilege = PrivilegeFactory.GetPrivilege();
 }
 protected override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     privilege = PrivilegeFactory.GetPrivilege();
 }