2
我在写一个验证属性,它坐落在类上,但检查类的属性。我希望它为每个它认为无效的属性设置验证消息。我该怎么做呢?如何动态设置具有类验证属性的属性的验证消息
这是我这么远:
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public class LinkedFieldValidationAttribute : ValidationAttribute
{
private readonly string[] _properiesToValidate;
public LinkedFieldValidationAttribute(params string[] properiesToValidate)
{
_properiesToValidate = properiesToValidate;
}
public override bool IsValid(object value)
{
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(value);
foreach (var propertyName in _properiesToValidate)
{
var propertyValue = properties.Find(propertyName, false).GetValue(value);
//if value is invalid add message from base
}
//return validity
}
}
这似乎是.net 4.0,有没有3.5方法? – Dan 2010-04-19 14:40:36
我不知道。你可以尝试设置'ErrorMessage'。 – 2010-04-19 15:09:11
ErrorMessage只是一个字符串 - 没有办法设置它与类属性之间的关联,我不认为? – Dan 2010-04-19 15:39:40