public virtual string this[string columnName]
 {
     get
     {
         if (ValidationRulesEngines.Any())
         {
             return(ValidationRulesEngines.SelectMany(vre => vre.ValidateProperty(this, columnName)).FirstOrDefault());
         }
         return(null);
     }
 }
 public static void AddValidationRulesEngine(IValidationRulesEngine engine)
 {
     ValidationRulesEngines.Add(engine);
 }