Это моя модель:Изменить Validation недвижимости в ASP.NET MVC 3 по условию
[RegularExpression(@"^08[589][0-9]{8}$", ErrorMessage = "Invalid Number!")]
public string Phone { get; set; }
[ForeignKey]
public long PhoneType { get; set; } // 1-CellPhone , 2-Phone
Так что я думаю, что изменить RegularExpression
Проверки по изменению PhoneType
, если я хочу сказать более конкретно:
если пользователь может выбрать из CellPhone
DropDownList
валидация быть
[RegularExpression(@"^08[589][0-9]{8}$", ErrorMessage = "Invalid Number!")]
и если выберите Phone
проверка будет
[RegularExpression("^[1-9][0-9]{9}$", ErrorMessage = "Invalid Number!")]
Какое ваше предложение?
является FluentValidation.NET внедрить простой способ, а также зарегистрировать на стороне клиента ненавязчивую проверку? –
@WahidBitar, да, FluentValidation.NET поддерживает те же правила проверки клиента, что и аннотации данных. –
@DarinDimitrov Спасибо за ответ, но есть некоторые проблемы для работы с FluentValidation.Net, сначала: как говорится в документации: FluentValidation также будет работать с проверкой на стороне клиента ASP.NET MVC, но не все правила поддерживаются. Например, любые правила, определяемые с помощью условия (с использованием/без), пользовательских валидаторов или вызовов Must, не будут выполняться на стороне клиента. и Second: я не могу контролировать ErrorMessage на стороне клиента. Я прав? – Saeid