Tutorial de ASP.NET
Vista Previa de ASP.NET 2.0

Efectuando Acceso a Datos

Lo nuevo en 2.0

  • Controles de Fuente de Datos - ASP.NET 2.0 introduce controles declarativos de fuente de datos que hacen accesibles los datos de almacenes internos (bases de datos SQL, objetos de negocios de capa intermedia o ficheros XML) a los controles de la interfaz de usuario (UI), para el enlazado a datos en una página. Los controles de fuente de datos también tienen otras capacidades como la clasificación, la paginación, el "catching", la actualización, la inserción y la eliminación de datos, que los controles de la UI puede aprovechar sin requerir ningún tipo de código.
  • Nuevos Controles de Enlazado a Datos - Además de los controles de enlazado a datos de ASP.NET 1.x, ASP.NET incluye nuevos controles de UI de enlazado a datos como el GridView, DetailsView,FormView, TreeView y Menu, que se pueden personalizar para mostrar los datos en diferentes formatos. Los controles GridView, DetailsView y FormView pueden, además, aprovechar las capacidades de la fuente de datos, haciendo así más sencillo las operaciones de clasificación, paginación y actualización en páginas orientadas a datos (data-driven).
  • Parámetros de Control de Datos - Las fuentes de datos pueden aceptar parámetros de entrada de diferentes fuentes utilizando los nuevos "objetos de parámetros" de controles de datos de ASP.NET 2.0. Estos "objetos de parámetros" nos permiten proporcionar fácilmente los valores de las propiedades de los controles de servidor (campos sesión, aplicación, cookie y querystring) y las propiedades del perfil de usuario para operaciones de datos parametrizadas. La utilización de estos parámetros permite el filtrado y escenarios de "master-details" con poco código o código personalizado.
  • Sintaxis de Enlazado a Datos Mejorada - La sintaxis de enlazado a datos de DataBinder.Eval en ASP.NET se ha simplificado para el escenario común de enlazar un control en una plantilla enlazada a datos. Es posible, además, asociar dos formas de enlazar datos con las propiedades de un control en una plantilla para permitir, de esta forma, que los valores se pasen automáticamente para la actualización, inserción o borrado en la fuente de datos. Para datos XML jerárquicos ASP.NET 2.0 también incluye una sintaxis de enlazado a datos basado en XPath.
  • Bases de Datos de Ficheros Locales Utilizando SQL Express - Para un desarrollo más sencillo, ASP.NET 2.0 soporta la habilidad de conectar con una base de datos SQL Express como un fichero local de la aplicación, eliminando la necesidad de enviar la base de datos a un servidor sólo para realizar el trabajo de desarrollo. Por supuesto, también podemos seguir conectándonos a las bases de datos de un servidor SQL.
Esta sección describe éstas y otras características del acceso a datos en ASP.NET 2.0.

Prácticamente todas las aplicaciones Web dinámicas realizan algun tipo de acceso a datos y, afortunadamente, ASP.NET 2.0  facilita mucho esta acción. A diferencia de ASP.NET 1.0, que requería que los desarrolladores escribieran código personalizado para recuperar y enlazar los datos a controles de servidor, ASP.NET 2.0 permite una solución declarativa para el enlazado a datos que requiere poco código para los escenarios de datos más comunes, como por ejemplo:
  • Seleccionar y Mostrar Datos
  • Ordenar, Paginar y Cachear Datos
  • Actualizar, Insertar y Borrar Datos
  • Filtrar o "Master-Details" Utilizando Parámetros
ASP.NET 2.0 introduce dos tipos de controles de servidor que participan en este modelo declarativo de enlazado a datos. Estos dos tipos de controles de datos manejan toda la complejidad del modelo Web para escenarios de datos, de forma que los desarrolladores no tienen que entender los eventos del ciclo de vida de las peticiones para realizar el enlazado de los datos. Otro beneficio de este modelo basado en controles es que se puede extender de forma sencilla para soportar el acceso a datos de otros proveedores.

Controles de Fuente de Datos

Los controles de fuente de datos no se representan, sino que, en lugar de eso, representan un almacén de datos, como por ejemplo una base de datos, un objeto de negocio, un fichero XML o un Web Service XML. Los controles de fuente de datos también hacen posibles funconalidades más "ricas" sobre los datos (clasificación, paginación, filtrado, actualización, borrado e inserción) que pueden utilizar los controles de enlazado a datos de la UI de forma automática. ASP.NET incluye los siguientes controles de servidor, por defecto:
Nombre Descripción
SqlDataSource Permite enlazar a una base de datos SQL representada por un proveedor ADO.NET, como por ejemplo Microsoft™ SQL Server, OLEDB, ODBC, o Oracle.
ObjectDataSource Permite enlazar a un objeto de capa intermedia como los de capa de acceso a datos o un componente de negocios.
AccessDataSource Permite enlazar a una base de datos Microsoft™ Access (Jet).
SiteMapDataSource Permite enlazar a la jerarquia mostrada por un proveedor de navegación de sites de ASP.NET 2.0.
XmlDataSource Permite enlazar a un fichero o documento XML.

Controles de Enlazado de Datos

Los controles de enlazado de datos son controles de UI que renderizan los datos como marcas para los dispositivos o navegadores clientes. Un control de enlazado de datos puede auto-enlazar una fuente de datos a un dato mostrado y traerá los datos en el momento apropiado dentro del ciclo de vida de la página. Estos controles puedes aprovecharse, opcionalmente, de las capacidades de la fuente de datos, como por ejemplo clasificación, paginación, filtrado, actualizado, borrado y inserción. Un control de enlazado de datos se conecta con una fuente de datos a través de su propiedad DataSourceID. Podemos estar familiarizados con algunos de los controles de enlazado de datos de ASP.NET 1.x, como por ejemplo DataGrid, DataList, Repeater, y controles de lista como DropDownList. ASP.NET 2.0 contiene varios controles de enlazado de datos nuevos, como:

Nombre Descripción
GridView Presenta los datos en formato de "rejilla" (grid). Es una evolución del control DataGrid, y puede aprovechar automáticamente las características de la fuente de datos.
DetailsView Presenta un sólo elemento en una tabla de parejas etiqueta/valor, similar a la vista de formulario de Microsoft™ Access. Este control también puede aprovechar automáticamente las características de la fuente de datos.
FormView Presenta de la forma definida en una platilla personalizada un sólo elemento de datos. Presenta un elemento en una tabla de parejas etiqueta/valor, similar a la vista de formulario de Microsoft™ Access. Este control también puede aprovechar automáticamente las características de la fuente de datos.
TreeView Presenta los datos en una vista de árbol jerárquico de nodos expandibles.
Menu Presenta los datos en un menú dinámico expandible (incluyendo flyouts).

Esta sección demuestra éstas y otras características nuevas de ASP.NET 2.0.