У меня есть собственный валидатор со следующей сигнатурой:
Код: Выделить всё
public class FileSizeValidator : PropertyValidator
Поэтому я сделал простой клиентский валидатор, например:
Код: Выделить всё
public class FileSizeClientValidator : ClientValidatorBase
{
public FileSizeClientValidator(IValidationRule rule, IRuleComponent component) : base(rule, component)
{ }
public override void AddValidation(ClientModelValidationContext context)
{
MergeAttribute(context.Attributes, "test-attribute", "test message");
}
}
Код: Выделить всё
services
.AddFluentValidation(options =>
{
options.ConfigureClientsideValidation(clientside =>
{
clientside.ClientValidatorFactories[typeof(FileSizeValidator)] = (_, rule, component) =>
new FileSizeClientValidator(rule, component);
});
});
Увы, в форме ничего не отображается. Хуже того, ни конструктор, ни метод AddValidation не срабатывают ни в какой момент, а точки останова, размещенные там, никогда не срабатывают.
Подробнее здесь: https://stackoverflow.com/questions/690 ... yvalidator
Мобильная версия