public RuleInfo(PropertyInfo target, XmlTextReader xtr) 
 {
     _targetName = target.PropertyInfoName;
     _targetType = target.Type;
     _handler = (CommonRuleHandler)Enum.Parse(typeof(CommonRuleHandler), xtr.LocalName);
     _priority = 0;
     _argument = xtr.ReadElementString();
 }
            public RuleInfo(PropertyInfo target, XmlTextReader xtr) 
            {
                _targetName = target.Name;
                _targetType = target.Type;
                _handler = (CommonRuleHandler)Enum.Parse(typeof(CommonRuleHandler), xtr.LocalName);
                _priority = 0;
                _argument = xtr.ReadElementString();

                if (_handler == CommonRuleHandler.StringRequired && _targetType == "SmartDate")
                {
                    _targetType = "string";
                    _targetName += "String";
                }
            }
 public RuleInfo(PropertyInfo target, CommonRuleHandler handler, string argument, int priority)
 {
     _targetName = target.PropertyInfoName;
     _targetType = target.Type;
     _handler = handler;
     _argument = argument;
     _priority = priority;                
 }
 public RuleInfo(PropertyInfo target, CommonRuleHandler handler, string argument, int priority)
 {
     _targetName = target.Name;
     _targetType = target.Type;
     _handler = handler;
     _argument = argument;
     _priority = priority;
     
     if (_handler == CommonRuleHandler.StringRequired && _targetType == "SmartDate")
     {
         _targetType = "string";
         _targetName += "String";
     }
 }