public override FieldValidationResult ValidateData(object value, Field field)
{
var stringValue = (string)value;
//-- compulsory
if (String.IsNullOrEmpty(stringValue) && (this.Compulsory ?? false))
return new FieldValidationResult(CompulsoryName);
stringValue = stringValue ?? "";
if (stringValue.Length > 0)
{
//-- minLength
int minLength = this.MinLength.HasValue ? this.MinLength.Value : 0;
if (stringValue.Length < minLength)
{
var result = new FieldValidationResult(MinLengthName);
result.AddParameter(MinLengthName, minLength);
return result;
}
//-- maxLength
int maxLength = this.MaxLength.HasValue ? this.MaxLength.Value : Int32.MaxValue;
if (stringValue.Length > maxLength)
{
var result = new FieldValidationResult(MaxLengthName);
result.AddParameter(MaxLengthName, maxLength);
return result;
}
}
return FieldValidationResult.Successful;
}