Объединение валидаторов регулярных выражений в специальный валидатор (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.

Другие вопросы по тегам