IList上的MVC模型自定义验证

时间:2012-05-14 07:56:30

标签: asp.net-mvc-3 validation model data-annotations customvalidator

我的模型中有一个IList属性。我需要为该属性(列表)计数编写自定义验证,该计数必须大于2。

public IList<AccountAddress> BulkOrderAddresses { get; set; }

请帮助我....

提前致谢

1 个答案:

答案 0 :(得分:3)

您可以实施IValidatableObject Interface

这样的事情:

public class MyObject : IValidatableObject
{
     public IList<AccountAddress> BulkOrderAddresses { get; set; }

     public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
     {
          if(BulkOrderAddresses == null && !BulkOrderAddresses.Length > 2)
          {
               yield return new ValidationResult("List should contain more than 2 items");
          }
     }
}