У меня есть ViewModel со свойствами для TextBox и флажок:
public bool SendAlerts { get; set; }
public string EmailAddress { get; set; }
Мне нужно проверить поле EmailAddress (текстовое поле), чтобы убедиться, что есть адрес электронной почты ТОЛЬКО, если флажок в моем представлении (который привязывается к свойству SendAlerts) проверяется.Если флажок не установлен, то не имеет значения, является ли текстовое поле EmailAddress пустым.
Как мне выполнить эту условную проверку?Я использую DataAnnotations
против некоторых других свойств в моем ViewModel
, как прямую аннотацию «Требуется» (но я не могу использовать это для этого сценария, поскольку она условна).
У меня естьиспользовал CustomValidation
для пары других свойств в моей модели представления, т.е.
public static ValidationResult IsTitleValid(object value)
{ ... }
Однако у меня есть только 1 значение объекта с этим подходом, вместо того, чтобы иметь возможность ссылаться как на значения флажка, так и на значения текстового поля.
Как лучше всего подойти к этому с помощью MVC?