Search code examples
asp.net-mvc-4model-validation

MVC validator for integer array in model


I have used validator required field in my model as follow and its working

  [Required(ErrorMessage = "Description is required.")]
        public string Description { get; set; }

Now i have another property of integer array type

 public string[] Roles { get; set; }

I am not able to get how can i put required field validator on integer array ?


Solution

  • Write a custom validation attribute.

    I've not tested but try code like this :

    public class RequiredArray : ValidationAttribute
    {
        public override bool IsValid(object value)
        {
            var list = value as IList;
            if (list != null)
            {
                return list.Count > 0;
            }
            return false;
        }
    }
    
    [RequiredArray (ErrorMessage = "Roles is required.")]
    public string[] Roles{ get; set; }