public List<RuleParameter> GetRulesForCategory(int categoryId)
{
var ruleSetId = -1;
if(context.RuleSets.Where(e => e.CateogryId == categoryId).Count() > 0)
ruleSetId = context.RuleSets.Where(e => e.CateogryId == categoryId).FirstOrDefault().RuleSetId;
List<RuleSet> ruleSets = context.RuleSets.Where(rs => rs.RuleSetId == ruleSetId).OrderBy(rs => rs.Priority).ToList<RuleSet>();
List<RuleParameter> ruleList = new List<RuleParameter>();
foreach (RuleSet rs in ruleSets)
{
Rule rule = context.Rules.FirstOrDefault(r => r.RuleId == rs.RuleId);
int param = (rs.RuleParameter != null) ? (int)rs.RuleParameter : 0;
ruleList.Add(new RuleParameter { Rule = rule, Param = param });
}
return ruleList;
}