我有以下课程
[CollectionName("People")]
public class MyPeople : TableEntity, IValidatableObject
{
[Required]
public string Id { get; set; }
//I want to access this one!!!!!!!!!!!!!!!!!!!
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
var results = new List<ValidationResult>();
if (Id.Contains(' ') || Id.Contains("\t"))
{
results.Add(new ValidationResult("Id can't contain whitespaces or tabs.", new[] { "Id" }));
}
return results;
}
}
我需要在逻辑中访问这个类的Validation并使用:
MyPeople app;
var validationContext = new ValidationContext(app, null, null);
var results = new List<ValidationResult>();
if (!Validator.TryValidateObject(app, validationContext, results, true))
{
...
}
但验证只是验证字段,例如 Id,因为它是必需的,但它没有访问我的方法 Validate 的实现。
是否可以访问它?