Пример #1
0
 private static bool EqualRules(List <RuleComponent> rule1, List <RuleComponent> rule2)
 {
     if (!MetodosEstaticos.CheckForCollectionsBothNullsOrWithSameCount(rule1, rule2))
     { // um null e outro nao null, ou dois nao nulls com counts diferentes
         return(false);
     }
     if (rule1 == null) // dois nulls
     {
         return(true);
     }
     for (var i = 0; i < rule1.Count; i++) // dois nao nulls com counts iguais
     {
         if (!string.IsNullOrEmpty(rule1[i].Content) && !string.IsNullOrEmpty(rule2[i].Content) &&
             !rule1[i].Content.Equals(rule2[i].Content))
         {
             return(false);
         }
     }
     return(true);
 }
Пример #2
0
 private static bool MatchRule(List <RuleComponent> rule, List <string> listStrings)
 {
     if (!MetodosEstaticos.CheckForCollectionsBothNullsOrWithSameCount(rule, listStrings))
     { // um null e outro nao null, ou dois nao nulls com counts diferentes
         return(false);
     }
     if (rule == null) // dois nulls
     {
         return(true);
     }
     for (var i = 0; i < listStrings.Count; i++) // dois nao nulls com counts iguais
     {
         if ((rule[i] == null) || string.IsNullOrEmpty(rule[i].Content) || string.IsNullOrEmpty(listStrings[i]))
         {
             return(false);
         }
         if (!rule[i].MatchString(listStrings[i]))
         {
             return(false);
         }
     }
     return(true);
 }