Exemple #1
0
        IEnumerable <ActionBase> GetModuleActions(ActionStateRule rule, IEnumerable <ActionBase> actionBases)
        {
            IEnumerable <string> assemblies =
                Application.Modules.Where(@base => new Regex(rule.Module).IsMatch(@base.GetType().FullName)).Select(
                    @base => @base.GetType().Assembly.FullName);

            return(actionBases.Where(@base => assemblies.Contains(@base.Controller.GetType().Assembly.FullName)));
        }
 private IEnumerable<ActionBase> GetActions(ActionStateRule rule){
     IEnumerable<ActionBase> actionBases =
         Frame.Controllers.Cast<Controller>().SelectMany(controller => controller.Actions);
     if (!string.IsNullOrEmpty(rule.Module)){
         return GetModuleActions(rule, actionBases);
     }
     ActionBase actionBase =actionBases.Where(@base => @base.Id == rule.ActionId).Select(@base => @base).Single();
     return new List<ActionBase>{actionBase};
 }
Exemple #3
0
        private IEnumerable <ActionBase> GetActions(ActionStateRule rule)
        {
            IEnumerable <ActionBase> actionBases =
                Frame.Controllers.Cast <Controller>().SelectMany(controller => controller.Actions);

            if (!string.IsNullOrEmpty(rule.Module))
            {
                return(GetModuleActions(rule, actionBases));
            }
            ActionBase actionBase = actionBases.Where(@base => @base.Id == rule.ActionId).Select(@base => @base).Single();

            return(new List <ActionBase> {
                actionBase
            });
        }
 IEnumerable<ActionBase> GetModuleActions(ActionStateRule rule, IEnumerable<ActionBase> actionBases) {
     IEnumerable<string> assemblies =
         Application.Modules.Where(@base => new Regex(rule.Module).IsMatch(@base.GetType().FullName)).Select(
             @base => @base.GetType().Assembly.FullName);
     return actionBases.Where(@base => assemblies.Contains(@base.Controller.GetType().Assembly.FullName));
 }