Я планирую разработать серверный элемент управления ASP.NET, чтобы обеспечить асинхронную проверку доступности имени пользователя для регистрации новых пользователей. Элемент управления позволит разработчику указывать на текстовое поле «имя пользователя» и будет указывать, доступно ли имя пользователя. Как и этот пример , но без неуклюжей панели обновления.
Одно из дизайнерских решений, которое вызывает у меня головную боль, - наследовать ли от ScriptControl или BaseValidator .
Реализуя его как ScriptControl , я могу упростить работу на стороне клиента и легко локализовать его с помощью resx.
Однако я хочу убедиться, что валидатор работает правильно по отношению к Page.IsValid. Единственный известный мне способ сделать это - переопределить BaseValidator и реализовать EvaluateIsValid()
.
Итак, мой вопрос: как бы вы предложили структурировать этот элемент управления? Является ли наследование от BaseValidator лучшим (единственным) способом получить правильную часть валидатора, или я могу сделать это другим способом?