Если у вас есть ситуации, когда это может потребоваться, а может и не потребоваться, лучше всего будет унаследовать ваш Setting
класс от IValidatableObject
и реализовать свой собственный Validate()
метод. Сделайте все необходимые проверки, чтобы увидеть, требуется ли это или нет, и выполните yield return new ValidationResult("Description", new[] { nameof(Domain ) })
, чтобы объяснить, почему это недействительно.
Если вы не можете сделать это определение внутри своего класса Settings
, тогда вы вероятно, придется сделать это в действии вашего контроллера и использовать что-то вроде ModelState.AddModelError("Description", nameof(model.Domain)));
с последующей проверкой ModelState.IsValid
, чтобы увидеть, должно ли действие завершиться и вернуть перенаправление / просмотр