Ayer en casa me decidí a realizar unos Labs con las ASP.NET 3.5 extensions de acceso dinámico a datos siguiendo los quickstarts en inglés disponibles en:
http://quickstarts.asp.net/3-5-extensions/dyndata/default.aspx
para probar eso de montarte una pequeña aplicación de mantenimiento de una base de datos sencilla en poco tiempo y pensé en crear un pequeño tutorial en español:
Lo primero que necesitamos es instalarnos las ASP.NET 3.5 Extensions Preview:
http://www.microsoft.com/downloads/details.aspx?FamilyId=A9C6BC06-B894-4B11-8300-35BD2F8FC908&displaylang=en
Una vez instaladas, creamos un proyecto Dynamic Data Web Application:
Cuando se crea el proyecto y miramos su estructura, a primera vista llama la atención la carpeta App_Shared:
En la carpeta App_Shared se encuentran las diferentes templates de páginas y campos (Data Pages y Data Fields) e imagenes que sirven para construir las páginas dinámicas. Entre las templates de páginas tenemos:
- ListDetailsTemplate.aspx: Muestra la lista de filas de una tabla concreta y el detalle de sus elementos. Esta es la plantilla por defecto para todas las operaciones de datos (DynamicGridView + DynamicDetailsView).
- DetailsTemplate.aspx: Muestra el detalle de una fila de la tabla (DynamicDetailsView)
- ListTemplate.aspx: Muestra la lista de filas de una tabla concreta. Está pensada para trabajar junto con DetailsTemplate.
Una vez visto un poco por encima las diferentes templates vamos a hacer que todo esto funcione:
Lo primero es crearnos un archivo LINQ to SQL Classes de la base de datos Northwind que nos servirá como repositorio de nuestra aplicación:
Y por último sólo tenemos que actualizar el Web.Config para que nuestra aplicación lo consuma y para habilitar las plantillas dinámicas par que se generen de manera automática las páginas con los datos. Para ello abrimos el Web.Config y buscamos esta línea:
<dynamicData dataContextType="" enableTemplates="false">
Y la actualizamos con esta información:
<dynamicData dataContextType="Northwind.RAD.DynamicData.App_Code.NorthwindDataContext"
enableTemplates="true">
Por último sólo queda ver el resultado:
Las filas de la tabla:
Editando un registro:
Como podéis ver se tarda excaso un minutillo en montarse una aplicación para mantener una base datos, que por supuesto, esto no es una aplicación empresarial ni mucho menos pero que viene muy bien para cosillas pequeñas de mantenimiento y tampoco se necesitan unos conocimientos experimentados.
En la figura donde se muestran los datos de la tabla, llama la atención la marca amarilla sobre el strock. Eso se puede lograr creandonos nuestros propios Data fields, que en este caso resalta los productos que tienen un stock menor de 100 pero eso lo dejamos para el siguiente artículo.
Y no quería despedirme sin antes comentar que hoy han actualizado ASP.NET Dynamic Data Preview:
http://code.msdn.microsoft.com/dynamicdata
Salu2