public IEnumerable <ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context) { yield return(new ModelClientValidationRule { ErrorMessage = ErrorMessageResourceName.Localize(), ValidationType = "enforcetrue" }); }
protected override ValidationResult IsValid(object value, ValidationContext validationContext) { ErrorMessageResourceName = ErrorMessageResourceName.IsNotNullOrEmpty() ? ErrorMessageResourceName : MinimumLength > 0 ? "StringLengthAttribute_ValidationErrorIncludingMinimum" : "StringLengthAttribute_ValidationError"; var dictionary = value as IDictionary; if (dictionary == null) { return(ValidationResult.Success); } var invalidMembers = (from object key in dictionary.Keys let item = dictionary[key]?.ToString() where item?.Length > MaximumLength || item?.Length < MinimumLength select $"{validationContext.MemberName}[{key}]").ToList(); return(invalidMembers.IsNotNullOrEmpty() ? new ValidationResult( FormatErrorMessage(validationContext.DisplayName), new[] { validationContext.MemberName }) : ValidationResult.Success); }
protected override ValidationResult IsValid(object value, ValidationContext validationContext) { if (OperandType == typeof(decimal) || ErrorMessageResourceName.Equals("Age")) { if (int.TryParse(value.ToString(), out int tmp) && tmp == -1) { return(ValidationResult.Success); } } return(base.IsValid(value, validationContext)); }
public override string FormatErrorMessage(string name) { return(ErrorMessageResourceName.Localize()); }