В предыдущих версиях ASP.NET MVC добавление пользовательской проверки в модель осуществлялось путем реализации IValidatableObject
и реализации собственного метода Validate()
. Например:
public class BestModelEver : IValidatableObject {
public DateTime? Birthday { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) {
if (Birthday.HasValue) {
yield return new ValidationResult("Error message goes here");
}
}
}
Является ли это по-прежнему рекомендуемым способом добавления пользовательской проверки в модель в ASP.NET Core? Использование IValidatableObject
берет на себя зависимость System.ComponentModel.DataAnnotations
.