Conexión y listado de una base de datos en ASP.NET

Escrito por Carla Vázquez el Miércoles 16 de Abril de 2008 a las 17:45hs

En este artículo introducimos una cuestión bastante recurrente a la hora de trabajar con base de datos, esto es, la conexión y listado de base de datos mediante tecnología ASP. NET. En reiteradas ocasiones queremos enlazar datos SQL (Microsoft SQL Server, Oracle, entre otros) a nuestras aplicaciones web dónde sencillamente podemos hacer uso del control SqlDataSource para establecer una conexión directa. Sin embargo, a continuación presentaremos otro modo de lograr dicho propósito a través del control Gridview que propone ASP. NET.

Al respecto vale aclarar que este control lo encontramos en la versión 2.0 de ASP NET siendo su utilidad similar al control DataGrid de la versión 1.0.

Lo que permite este control de enlace de datos es presentar la información en un formato tabular al estilo “rejilla”. A su vez, presenta numerosas funcionas tales como actualizar, borrar, clasificar, seleccionar y variados recursos para trabajar con las distintas filas y columnas. También ofrece posibilidades de personalizar, de acuerdo a la aplicación web particular.

En principio, es necesario elaborar lo que se denomina un informe de datos SQL. Para esto es requisito tener configurado en el sitio un SqlDataSource que luego deberemos asociar a un control al estilo de Gridview que mencionábamos anteriormente para que quede establecida la conexión a la base de datos. Una forma práctica de almacenar la base de datos es mediante el Web.config para luego referirse directamente a ello en el código.

Paso 1: almacenando en un archivo Web.Config

<appSettings>
<add key="MiBasedeDatos" value="server=Server;uid=name;pwd=Password;database=nombre" />
</appSettings>

Paso 2: Referirse a lo antedicho en la aplicación Asp. Net

SqlConnection myConnection = new SqlConnection(ConfigurationSettings.AppSettings("MiBasedeDatos"));

Ahora bien, para trabajar con el control Gridview, un código posible sería el siguiente:

<form runat="server">
<asp:GridView ID="GridView1" DataSourceID="SqlDataSource2" runat="server"/>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
SelectCommand="SELECT [au_id], [au_name], [au_name] FROM [authors]" ConnectionString="<%$ ConnectionStrings:P %>" />
</form>

Aquí vemos cómo en el momento de establecer la conexión entre el control y la base de datos, es necesario también indicar la propiedad DataSource ID.

En lo que sigue veremos una serie de particularidades que presenta el control Gridview en lo que respecta al manejo de base de datos. Por ejemplo, éste permite la paginación y clasificación de modo automático. Como requisito básico para efectuar dichas acciones se necesita configurar el control SqlDataSource. Para que esto funcione la propiedad AllowSorting es preciso cambiarla al estado “verdadero” de la siguiente manera:

<asp:GridView ID="GridView1" AllowSorting="true" runat="server" DataSourceID="SqlDataSource2"
AutoGenerateColumns="False">

Inmediatamente esto nos abre una serie de opciones que permiten clasificar las columnas mediante la utilización de una serie de botones que nos ofrece el control Gridview, como por ejemplo la posibilidad de clasificar según orden ascendente o descendente. Otra aclaración pertinente en relación a este ejemplo, es que SqlDataSource funcionará solamente si la propiedad DataViewSort está configurada en DataSet. Por el contrario, con un modo DataReader la clasificación no será viable.

Con Gridview otras operaciones son posibles, por ejemplo, la actualización y eliminación de datos. Para este propósito se utilizan las propiedades UpdateCommand y DeleteCommand respectivamente. Una opción puede residir en agregar un CommandField a dicho control y a través de las propiedades ShowEditButton o ShowDeleteButton proceder a la edición o eliminación de filas según cada criterio.

Hasta aquí una forma sencilla, aunque no la única, de trabajar con el enlace hacia una base de datos y modificar su listado en aplicaciones basadas en ASP.NET.


comentarios

No hay comentarios.



agregar comentario


Se permiten las etiquetas HTML <b>, <i> y <p>. Si ingresa alguna dirección web o dirección de email serán convertidos en enlaces automáticamente.





publicidad