public RuleActionCollection(MetaRule metaRule, MetaAction metaAction)
 {
     this.MetaRule = metaRule;
     this.MetaAction = metaAction;
 }
        public List<RuleActionCollection> RuleActionCollection(string logCategory)
        {
            List<RuleActionCollection> collection = new List<RuleActionCollection>();
            IEnumerable<MetaRuleAction> result = repository.MetaRuleActions.Where(a => logCategory == a.LogCategory);

            foreach (MetaRuleAction mra in result)
            {
                MetaRule mr = new MetaRule();
                mr.Name = mra.RuleName;
                mr.Assembly = mra.RuleAssembly;
                mr.Class = mra.RuleClass;

                mr.Args = repository.BusinessRulesArgs.Where(a => a.MetaFK == mra.MetaID).Select(a => a.Args).ToList();

                MetaAction ma = new MetaAction();
                ma.Name = mra.ActionName;
                ma.Assembly = mra.ActionAssembly;
                ma.Class = mra.ActionClass;

                ma.Args = repository.BusinessActionArgs.Where(a => a.MetaFK == mra.MetaID).Select(a => a.Args).ToList();

                RuleActionCollection rac = new RuleActionCollection(mr, ma);
                collection.Add(rac);

            }

            return collection;
        }