Как я могу использовать один и тот же настраиваемый атрибут проверки несколько раз в одном поле или просто включить AllowMultiple = true как для проверки на стороне сервера, так и на стороне клиента ??
У меня есть следующий настраиваемый атрибут проверки Атрибут проверки:
[AttributeUsage(AttributeTargets.Field | AttributeTargets.Property,
AllowMultiple = true, Inherited = true)]
public class RequiredIfAttribute : ValidationAttribute,IClientValidatable
{
public RequiredIfAttribute(string dependentProperties,
string dependentValues = "",
string requiredValue = "val")
{
}
}
Там, где в зависимых свойствах я могу указать несколько зависимых свойств, разделенных запятыми, в зависимых значениях я могу указать, для каких значений зависимых свойств должна выполняться проверка, и, наконец, в requiredValue я могу указать ожидаемое значение для проверяемого поля.
В моей модели есть два свойства LandMark, PinCode, и я хочу использовать проверку следующим образом:
public string LandMark { get; set; }
[RequiredIf("LandMark","XYZ","500500")]
[RequiredIf("LandMark", "ABC", "500505")]
public string PinCode { get; set; }
Значения здесь только для примера, кажется, я могу добавить атрибут несколько раз и не получить компиляцию Ошибка, я реализовал TypeID в атрибуте, и он хорошо работает со стороны сервера, если я удалю из него проверку клиента. Но когда я использую IClientValidatable для атрибута, появляется ошибка:
«Имена типов проверки в ненавязчивых правилах проверки клиентов должны быть уникальными».
Любая помощь, как я могу решить эту проблему ??