public override BrokenRule Validate(object value, ValidationContext context)
        {
            BrokenRule rule = new BrokenRule();

            if (null == value || string.IsNullOrWhiteSpace(value.ToString()))
            {
                rule.IsBroken     = true;
                rule.ErrorMessage = this.Message;
                rule.Name         = this.Name;
            }

            return(rule);
        }
        public override BrokenRule Validate(object value, ValidationContext context)
        {
            BrokenRule rule = new BrokenRule();

            var targetField = context.SourceObject.GetType().GetProperty(this.Name);

            if (value != targetField.GetValue(context.SourceObject))
            {
                rule.IsBroken     = true;
                rule.ErrorMessage = this.Message;
                rule.Name         = this.Name;
            }

            return(rule);
        }