简体   繁体   English

MVC3自定义验证

[英]MVC3 Custom validation

I have a model with property 我有一个属性的模型

    [Display(Name = "Phone")]
    public List<Phone> PhoneNumbers { get; set; }

I want to validate that List should be greater then 0 我想验证List应该大于0

Suggest me the code. 建议我代码。

/// <summary>
/// Atleast one phone number is required
/// </summary>
public sealed class DemographicPhoneNumberRequiredCheck : ValidationAttribute
{
    public override bool IsValid(object value)
    {
       ???????
    }
}

Thanks. 谢谢。

You could use Count or Any : 您可以使用CountAny

   public override bool IsValid(object value)
    {
       var PhoneNumbers = value as List<Phone>;
       if (PhoneNumbers != null) 
       {
          return PhoneNumbers.Count() > 0;
       }

       return false;
    }

Or: 要么:

    public override bool IsValid(object value)
    {
       var PhoneNumbers = value as List<Phone>;
       if (PhoneNumbers != null) 
       {
          return PhoneNumbers.Any();
       }
    }

Actually you have the value in your method: 实际上你的方法有价值:

public override bool IsValid(object value)
{
    var phoneNumbers = value as List<Phone>;
    if(phoneNumbers != null) 
    {
        // perform the validation
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM