Объединение валидаторов регулярных выражений в специальный валидатор (C#)
У меня есть три валидатора регулярных выражений, которые нацелены на одно и то же текстовое поле, но выдают разные сообщения об ошибках соответственно.
Как мне объединить их в пользовательском валидаторе, чтобы получить разные ErrorMessage?
public void PasswordValidate(Object source, ServerValidateEventArgs args)
{
Regex PasswordComplexity = new Regex(@"^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$");
Regex ConsecutiveCharCheck = new Regex(@"^(?!.*(?:(.)\1{3,})).*$");
Regex PasswordLiteralCheck = new Regex(@"^((?!(p|P)(a|A)(s|S)(s|S)(w|W)(o|O)(r|R)(d|D)).)*$");
1 ответ
Решение
Я думаю, вы должны оставить их как три отдельных валидатора. Однако, если вы хотите отделить проверку пароля от остальной части проверки формы, то вы можете заглянуть в ValidationGroup
свойство для группировки их продукции.
Изменить: Основываясь на комментариях ниже, я считаю, что предпочтительным решением было установить Display
свойство Dynamic и сохранить несколько RegularExpressionValidator's.