У меня есть довольно сумасшедшая пользовательская проверка, над которой я работаю. В основном, на основе выбора раскрывающегося списка, который будет определять, какие значения проверяются относительно целевого свойства.
Например, у меня есть следующее выпадающее меню:
1 = Автомобиль
2 = Грузовик
В моей пользовательской проверке, если выбрано «Автомобиль», значение не может быть больше 20. Если выбрано «Грузовик», значение не может быть больше 40.
Так что мои атрибуты должны выглядеть примерно так:
[ValueBelowIf("1", 20)]
[ValueBelowIf("2", 40)]
public int Value { get; set; }
Конечно, даже для его компиляции я должен установить это на свой пользовательский атрибут:
[AttributeUsage(AttributeTargets.Property, AllowMultiple = true)]
public class ValueBelowIfAttribute : ValidationAttribute, IClientValidatable
Однако представляется, что привязан только первый атрибут, а второй игнорируется.
Что я делаю не так?