MCTS 70-562: Consumiendo y creando controles de servidor

Aprender a manejar los controles de datos, son básicos, los que se liberaron con ASP.NET 2.0, tienen muchas opciones para personalizarlos: GridView, DetailsView, y FormsView.

  • El control DataGrid, creo que se quedo en VS2003, y el control GridView tiene mucho más poder. Y si usas VS2005 o superior, ni mires al DataGrid :D, sólo es bueno saber que fue el control principal para mostrar data en VS2003, y nada más :).
  • El control DataList, permite mostrar información en lista, también editar, haciendo el uso de plantillas. Con la propiedad RepeatLayout, puedes escoger si muestra la lista en estructura tabla, o en un flujo continuo. A través de los templates tu puedes decir como se muestra la cabecera, los items, los items alternativos (eso para tener la lista en dos colores, para una mejor identificación de las filas).
  • El control Repeater, te muestra el html como tu le dices, no tiene funcionalidades built-in como el DataList, pero te permite personalizar todo el html que se muestra al usuario. En un prueba de performance que alguna vez vi en un libro, en el orden de request/seg (quien tiene más repuestas), se lo lleva Repeater, donde el html mostrado es más limpio, y le sigue el DataList, y por el último el DataGrid. Se puede decir que las funcionalidades built-in, están relacionados inversamente con el render óptimo de html.
  • GridView, y aquí empiezan los nuevos controles de Data liberados con ASP.NET 2.0. Este control tiene muchas funcionalidades built-in, puedes hacer paginación con un click, ordenamiento, tiene nuevos soportes para columnas, puedes extender el control. Para muestra de datos donde no se requiere un render personalizado del html, este control es ideal para mostrar listas. Soporta los controls XDataSource. Digamos que este control es la evolución del DataGrid. Con este control, podemos listar, editar, y eliminar registros, y que pasa si queremos ingresar un registro?, revisar el siguiente control.
  • DetailsView, te permite mostrar un registro a la vez, pero te permite ingresar nuevos registros. Este ya no lo uso mucho, prefiero usar el control FormView, cuando tengo que hacer un mantenimiento. FormView vs. Details View.
  • FormView, que puedo decir?, para mi este (usándolo con un ObjectDataSource apuntando a una clase que tiene un método insertar, actualizar, eliminar y traer uno) control es el control de mantenimiento, aún veo mucha gente que no lo usa. Y a mi parecer es porque que piensan que no se puede personalizar, a este control le puedes personalizar todo, sólo usar la plantilla de insertar, sólo la editar, las dos. Puedes personalizar los botones para las operaciones de CRUD, o simplemente puedes llamarlos de controles externos programáticamente, puedes agregar valores (en el evento inserting, y updating) que por ejemplo estén fuera del control FormView, puedes manejar errores (en el evento inserted, updated, deleted), y todo tipo de mantenimiento puedes hacer con este control, puedes usarlo con ASP.NET AJAX, nuevamente, este es "el control de mantenimiento". Ya no, al objPerson.Name = txtNombre.Text, o algo txtNombre.Text = objPerson.Name, este control lo hace todo, verdaderamente que te quita un gran trabajo de encima, sobre todo cuando tienes mantenimientos de objetos con 20 a 30 campos. Definitivamente tengo que hacer un post, para que me crean :D.
  • ListView, para mi este control es un híbrido entre el GridView-DataList-Repeater, es como el Repeater porque muestra un html limpio, tu personalizas como quieres que se muestre cada parte del html, es como el control DataList por que permite editar información, y es como el GridView porque soporta la paginación, con el Repeater tu tenías que crear la paginación, ahora el ListView junto con el control DataPager, te muestran los resultados paginados. Buena combinación: tu objectDataSource apuntando a tu clase con dos métodos TraerTodos paginado, y el método ContarFilas, para una paginación personalizada y optimizada con el ObjectDataSource, + el control ListView donde tu le dices como se muestra el html, + el control DataPager, para el soporte de paginación, definitivamente una buena combinación. DataList vs Listview, por cierto un plus, el ListView es el único control de Lista que soporta la inserción como template, con los otros hay que hacer alguna marcianada para lograr esto.

De creación de controles ya hemos hablando, de los controles de validación también, por cierto no confundir validación con seguridad, y los otros controles... pues bueno... son los otros controles :D.

P.D.: Creo que deberían dedicarle buen tiempo a los controles de Data, de verdad que todo lo necesita una aplicación, validación, manejo de errores, personalización de funcionalidad, de presentación, todo se puede hacer. Recursos útiles: http://www.asp.net/learn/.

Saludos,

Published 21/3/2008 4:43 por Sergio Tarrillo
Archivado en: ,,
Comparte este post:
http://geeks.ms/blogs/sergiotarrillo/archive/2008/03/21/81417.aspx

Comentarios

# re: MCTS 70-562: Consumiendo y creando controles de servidor

HOla estoy estudiando para pasar el examen 70-547 y luego me toca el examen 70-562. ¿ alguna recomendación? ¿Algún temario recomendado?.

Muchas cracias y un saludo.

Mi dirección es todoper@hotmail.com

Tuesday, March 31, 2009 7:33 PM por lucas