У меня есть модель, в которой есть два поля, в которых используется валидатор RequiredIf (требуется либо Телефон, либо Электронная почта):
[RequiredIf("Phone == null", ErrorMessage = "Either Phone or Email is required")]
public string Email { get; set; }
[RequiredIf("Email == null", ErrorMessage = "Either Phone or Email is required")]
public string Phone {get; set; }
Проблема заключается в том, что в форме, если вы переходите к первому полю (Электронная почта), как только вы переходите к нему, запускается проверка для телефона и появляется сообщение об ошибке. Если вы начнете печатать, сообщение об ошибке исчезнет.
Запрашиваемая функциональность заключается в том, что если вы вкладываете в электронную почту, проверка не запускается, пока вы не удалите оба условно обязательных поля, или, наоборот, проверка не запускается, пока вы не нажмете кнопку отправки.
Возможно ли это с помощью аннотации RequiredIf?