2008-09-19 20 views
9

¿Hay alguna manera fácil e inteligente de mantener sincronizadas las reglas de validación de cliente y servidor?ASP.NET: Sincronización de reglas de validación del lado del cliente y del servidor

En el lado del cliente tenemos JavaScript, tal vez algún tipo de marco como jQuery o YUI.

En el lado del servidor tenemos ASP.NET WebForms o ASP.NET MVC.

Lo que se validó son cosas como:

  • direcciones de correo electrónico correcta
  • Corregir el hogar direcciones y códigos postales
  • números de tarjetas de crédito Corregir

etc. .

Respuesta

2

< asp: RegularExpressionValidator ... > (y los otros validadores asp.net) implementa javascript del lado del cliente y verificación del lado del servidor con las mismas reglas.

+0

¿Qué verificación del servidor hace? Y cómo funciona esto con ASP.NET MVC. –

+0

Todos los validadores en ASP.NET funcionan tanto en el lado del cliente como del servidor, ya que solo la validación del cliente sería un gran vacío de seguridad. No he intentado usar los validadores en MVC. –

1

escribe un corpus grande y común de datos de prueba que incorpora las reglas de validación, y prueba tus validadores con estos datos comunes.

Cuando cambian sus reglas, usted refleja esto actualizando los datos de prueba y las pruebas hasta que todo vuelva a ponerse verde.

1

Siempre he usado los validadores incorporados. Por ejemplo, si usa un ValidationExalidator de RegularExpression y proporciona un ValidationExpression, se validará en el lado del cliente (si está disponible) y en el lado del servidor utilizando el mismo código.

Puede escribir sus propios validadores personalizados derivando de BaseValidatior. Hacer esto le permite crear Validación de Servidor anulando EvaluteIsValid. Luego puede agregar la validación del cliente más adelante si es necesario.

1

Esto no es una solución del mundo real, pero echa un vistazo a Axial project en CodePlex. Es un proyecto que convierte C# a Javascript para la web y tiene un control que le permite usar el mismo código para la validación del lado del servidor y la validación del lado del cliente. No está listo para la producción, pero tengo curiosidad por ver si esto es lo que estás buscando.

1

xVAL es bastante más fácil que la Validación de la biblioteca de empresa y maneja la validación de modelo enlazado para Cliente y Servidor.

Cuestiones relacionadas