public override void OnActionExecuting(ActionExecutingContext filterContext) { var controllerActionMap = new ControllerActionMap( filterContext.ActionDescriptor.ControllerDescriptor.ControllerName, filterContext.ActionDescriptor.ActionName); if (!HasPermission(controllerActionMap)) { filterContext.Result = new HttpUnauthorizedResult("没有访问权限"); } }
public static bool HasPermission(ControllerActionMap map, Permission permission = null) { if (permission == Permission.Admin) return true; if (!store.ContainsKey(map) || store[map].Count == 0) return true; return store[map].Contains(permission); }
bool HasPermission(ControllerActionMap controllerActionMap) { if (DomainSession.Current.Employee == null) return PermissionRepository.HasPermission(controllerActionMap); return PermissionRepository.HasPermission(controllerActionMap, DomainSession.Current.Employee.Permission); }