namespace ArgumentsToolkit; /// /// Базовый атрибут для всех правил валидации. /// [AttributeUsage(AttributeTargets.Property, AllowMultiple = true)] public abstract class ValidationAttribute : Attribute { /// Кастомное сообщение об ошибке. public abstract string ErrorTemplate { get; set; } /// /// Проверяет значение свойства. /// /// Значение свойства. public abstract bool Validate(object? value); /// /// Возвращает сообщение об ошибке для указанного значения. /// public abstract string GetErrorMessage(string optionName, object? value); }