domingo, 2 de marzo de 2014

Paginación en ASP.NET

Es típico que en algún momento quieras mostrar los registros guardados en una base de datos al cliente de la aplicación. Pero, ¿qué pasa cuando estos registros son demasiados para ser mostrados de una sola vez? Muchos problemas pueden ocurrir si intentas mostrar demasiados registros de una vez:

- Consumir mucho ancho de banda de manera innecesaria
- El cliente tendrá que esperar mucho más tiempo para obtener los resultados de su consulta
- Si el cliente está viendo la página desde su smartphone, es posible que este se ponga bastante lento
- El cliente se puede sentir abrumado por tanta información cuando, probablemente, sólo quería verificar un dato pequeño

Para solucionar este problema recurrimos a la fragmentación de los resultados de la consulta, o paginación, en una sola palabra. Paginación es dividir en páginas los resultados de una consulta. Es lo mismo que ves en el buscador de Google cuando haces una búsqueda, ellos dividen el resultado en páginas si la consulta devuelve un número de datos bastante elevado.

En este artículo implementaremos la paginación de dos formas: con ADO.NET y con Entity Framework. Usaremos SQL Server como motor de bases de datos. Pero descuida, aún si no programas en c#/vb.net ni usas ASP.NET/Entity Framework, le puedes sacar provecho al código de este artículo (o al menos a su lógica) y hacer paginación en php y mysql, por ejemplo. Solo es cuestión de ver los aspectos claves del código y aplicarlos a tu entorno.

domingo, 9 de febrero de 2014

Usando cascadas en SQL Server

Nota: cuando hablamos de tabla padre y tabla hijo, nos referimos a una tabla (tabla hijo) que tiene una clave foránea (foreign key, en inglés) que hace referencia a otra tabla (tabla padre). Por tanto, utilizamos las expresiones padre e hijo para hablar de una relación de dependencia donde el hijo depende del padre.

Supongamos que tenemos una tabla padre y una tabla hijo, OrdenCompraCabecera y OrdenCompraDetalle, respectivamente. Si queremos borrar un registro de OrdenCompraCabecera nos encontramos con la situación de que primero debemos borrar los registros dependientes de OrdenCompraDetalle (SQL Server hace esto para evitar registros huérfanos, asegurando así una determinada integridad en los datos).

Para evitar esta "molestia" (¡una molestia necesaria!) podemos activar una cascada de las restricciones de referencia integral (de ahora en adelante le llamaremos solamente cascadas) en la tabla hijo para así, cuando hagamos un cambio en un registro padre, en los registros hijos se realizará una acción que determinemos.

sábado, 11 de enero de 2014

Estructura con HTML5: nav, article, section y aside

En una publicación anterior vimos el uso del header, footer, y otras etiquetas de HTML5. En esta publicación hablaremos de las etiquetas article, section, aside y nav; además veremos un ejemplo de cómo estructurar un pequeño blog con utilizando unos pocos estilos además de HTML5.

sábado, 28 de diciembre de 2013

Estructura básica con HTML5: header y footer

En HTML5 son varios los elementos que han sido agregados que facilitan y agilizan el desarrollo de una página web. Por si acaso, daremos primero un pequeño repaso de algunos elementos de HTML4, al menos de los estructurales, los demás los iremos viendo a medida que el tiempo pase.

Si no sabes dónde escribir código HTML tienes varias opciones:
- Si quieres algo ligero para empezar puedes usar notepad o notepad++
- Si tienes experiencia con Eclipse, probablemente se te hará fácil usar Aptana Studio 3.
- Si te interesa ASP.NET, puedes utilizar Visual Studio o Visual Studio Express for Web.
- Si estás familiarizado con los programas de adobe, a lo mejor Adobe Dreamweaver es lo tuyo.
- Uno bien ligero y bonito es Sublime Text.

No es recomendable usar notepad, se requiere demasiada precisión y uno tiende a perderse entre tanto código si no existe al menos algo que nos guíe, por lo que mínimo es recomendable usar notepad++. Pero no importa cuál escojas, mientras escribas bien el código todo saldrá de maravilla.

El documento HTML

En la publicación anterior hablamos de que cuando hacemos un pedido a un servidor web este nos envía un documento HTML. Hablaremos un poco de dicho documento, enfocándonos en tres partes: la parte de HTML, la parte de CSS y la parte de javascript, las cuales representan contenido, estilo y lógica, respectivamente.

Cuando hablamos del "documento HTML" nos referimos al archivo que un servidor web envía a nuestro navegador con el fin de poder visualizar la página web solicitada. A pesar de su nombre, el documento HTML contiene más que código HTML.

viernes, 27 de diciembre de 2013

Breve introducción a la web

Aunque este es un blog de programación, antes de ver empezar con la parte del código o configuración de la computadora para poder empezar a programar para la web, es importante tener al menos una noción de cómo funciona la web. En esta publicación hablaremos de navegadores, tipos de páginas web y programación del lado del cliente y del servidor.