Comprobar que todos los campos de un FormView están informados.

Con la llegada de los Validadores de ASP.NET, los desarrolladores nos confiamos y dejamos de lado la validación de los datos en el servidor y esto no es una buena practica, puesto que en un formulario donde todos los datos son obligatorios, puede ser que por algún motivo vengan vacíos y nos den de vez en cuando algún disgusto, aunque es verdad que una doble validación cliente-servidor implica mas tiempo de proceso y por consiguiente menos rendimiento, pero aumenta la seguridad tan importante hoy en día.

En el caso del FormView, podemos validar de una forma fácil y sencilla si todos los campos están informados.

Para realizar esta comprobación disponemos en su evento ItemUpdating e ItemInserting de una clase FormViewInsertEventArgs que nos devuelve una colección con los valores del Form, que podemos recorrer y comprobar como os muestro en el ejemplo:

   1:  protected void FormView1_ItemUpdating(object sender, FormViewUpdateEventArgs e)
   2:  {
   3:      foreach (DictionaryEntry entry in e.NewValues)
   4:      {
   5:          if (entry.Value.ToString() == String.Empty)
   6:          {
   7:              this.ClientScript.RegisterStartupScript(this.GetType(), "Alert", 
   8:  "<script>alert('Todos los campos son obligatorios')</script>");
   9:              e.Cancel = true;
  10:              break;
  11:          }
  12:      }
  13:  }
  14:   
  15:  protected void FormView1_ItemInserting(object sender, FormViewInsertEventArgs e)
  16:  {
  17:      foreach (DictionaryEntry entry in e.Values)
  18:      {
  19:          if (entry.Value.ToString() == String.Empty)
  20:          {
  21:              this.ClientScript.RegisterStartupScript(this.GetType(), "Alert", 
  22:  "<script>alert('Todos los campos son obligatorios')</script>");
  23:              e.Cancel = true;
  24:              break;
  25:          }
  26:      }
  27:  }

 Salu2 y espero que os sirva.

Published 14/6/2007 10:11 por Luis Ruiz Pavón
Archivado en: ,,
Comparte este post:
http://geeks.ms/blogs/lruiz/archive/2007/06/14/comprobar-que-todos-los-campos-de-un-formview-est-225-n-informados.aspx

Comentarios

# re: Comprobar que todos los campos de un FormView están informados.

Hola, solo una pequeña aclaración

Los validadores de asp.net siempre hacen la validación en el cliente y en el servidor y este comportamiento es por diseño.

Adicional a esto, es importante verificar que las validaciones fueron correctas utilizando el método Page.IsValid

Saludos!

Thursday, June 14, 2007 8:42 PM por Misael Monterroca

# re: Comprobar que todos los campos de un FormView están informados.

Hola Misael:

"Los validadores de asp.net siempre hacen la validación en el cliente y en el servidor y este comportamiento es por diseño"

Claro que por diseño hacen esa validación, pero tu la debes implmentar a manubrio, es decir o client-side validation o server-side validation o ambas.

salu2

Monday, June 25, 2007 3:07 PM por Luis Ruiz Pavón