我不知道我是找不到它还是它不存在,但是是否有任何验证属性可以检查集合是否为空/空?
如果没有,是否有任何关于如何创建自己的验证属性的好资源?
我不知道我是找不到它还是它不存在,但是是否有任何验证属性可以检查集合是否为空/空?
如果没有,是否有任何关于如何创建自己的验证属性的好资源?
嗨,当您按照 default.kramer 建议使用 DataAnnotations 时,您可以创建将 CustomValidation 属性和 ValidationMethod 添加到您的集合属性和类。请参见下面的示例。
ValidationMethod 的重要部分是它是静态的,您必须将要验证的对象和 ValidationContext 添加到静态方法中。
public class Order
{
[System.ComponentModel.DataAnnotations.Required( AllowEmptyStrings = false )]
public string Name
{
get;
set;
}
[System.ComponentModel.DataAnnotations.CustomValidation( typeof( Order ), "ValidateOrderLines" )]
public BindingList<OrderDetail> Lines
{
get;
set;
}
public static ValidationResult ValidateOrderLines( Order order, ValidationContext validationContext )
{
ValidationResult result = new ValidationResult( "Lines are required!" );
if ( order.Lines.Count != 0 )
result = ValidationResult.Success;
return result;
}
}
希望这可以帮助。
约翰·J v 伦斯堡