В ASP.NET 4.0 появилось свойство ClientIDMode, которое позволяет указать, как идентификаторы элементов html отображаются в выходном html.
В настоящее время мой проект установлен на "Статический" (самый короткий/не содержит идентификаторов иерархии)
При использовании любого валидатора (RequiredFieldValidator
, RegularExpressionValidator
...), если только элемент управления, который он проверяет, явно имеет свойство ClientIDMode: AutoID Я получаю сообщение об ошибке:
Входной параметр 'controlId' не может быть пустая строка.
Является ли это ожидаемым поведением?
Изменить: будучи немой с сообщением об ошибке, он хотел, чтобы я положил идентификатор в Validator, чего я, очевидно, не делаю (если мне не нужно ссылаться на него).
По-прежнему кажется странным, что по этой причине он должен потерпеть неудачу.