¿Anular ScriptControl o BaseValidator para un control de validación ASP.NET asíncrono?

StackOverflow https://stackoverflow.com/questions/50330

Pregunta

Estoy planeando desarrollar un control de servidor ASP.NET para proporcionar una validación asincrónica de la disponibilidad del nombre de usuario para registros de nuevos usuarios.El control permitirá al desarrollador señalar un cuadro de texto de "nombre de usuario" y proporcionará una indicación de si el nombre de usuario está disponible o no.Como este ejemplo, pero sin el torpe UpdatePanel.

Una decisión de diseño que me está dando dolores de cabeza es si heredar de Control de secuencias de comandos o Validador de base.

Al implementarlo como Control de secuencias de comandos, puedo hacer que la parte del lado del cliente sea más fácil de manejar y localizarla fácilmente con un resx.

Sin embargo, quiero asegurarme de que el validador funcione correctamente con respecto a Page.IsValid.La única manera que conozco de hacer esto es anular Validador de base e implementar EvaluateIsValid().

Entonces mi pregunta es, ¿cómo sugeriría usted estructurar este control?¿Heredar de BaseValidator es la mejor (única) manera de hacer bien la parte del validador, o puedo hacerlo de alguna otra manera?

¿Fue útil?

Solución

Debería poder hacer ambas cosas si implementa el IScriptControl interfaz y al mismo tiempo deriva de BaseValidator:

public class YourControl : IScriptControl, BaseValidator

Implementar la interfaz IScriptControl significa que su control también deberá tener los métodos GetScriptReferences y GetScriptDescriptors.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top