
Asynchronous JavaScript And XML
Es una combinación de varias tecnologías que permite que las aplicaciones web se ejecuten en el cliente, es decir, en el navegador de los usuarios mientras se mantiene la comunicación asíncrona con el servidor en segundo plano. De esta forma es posible realizar cambios sobre las páginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones.
Como ventajas tenemos:
Pero como todo no es de color de rosa, tenemos por otro lado:
En la página de ejemplos de Ajax Control Toolkit (http://www.asp.net/ajax/AjaxControlToolkit/Samples/) podemos encontrar ejemplos de utilización de los controles más comunes de Ajax para Microsoft.
Además de estos controles, vamos a utilizar EXTENSIONES para darle funcionalidad a nuestras páginas.
Ejemplos de algunas de las extensiones más utilizadas:
En ocasiones, cuando la recarga parcial de una página lleva bastante tiempo (por ejemplo en la carga de un grid), podemos encontrarnos con el siguiente mensaje:

La solución pasa por asignar un tiempo de espera más largo al objeto “ToolScriptManager”, mediante la propiedad “AsyncPostBackTimeout” (en segundos).
<ajaxToolkit:ToolkitScriptManager runat="server" ID="ScriptManager1" AsyncPostBackTimeout="360""/>En ocasiones puede ocurrir que, en una página, mostremos un ModalPopup para mostrar cierta información al/a usuario/a, pero que además, desde ese ModalPopup queramos llamar a otro ModalPopup para realizar, por ejemplo, una búsqueda sin perder la información del primero.
El problema surge con los navegadores que no tienen tratan bien la propiedad position:relative de las hojas de estilo Css2 (como Internet Explorer 6). En este caso el segundo ModalPopup (que debería salir centrado en la pantalla) aparecerá en la esquina superior izquierda de la misma.
La solución pasa por evitar estos dobles popups, ocultando el primero cuando queramos mostrar el segundo.
En cuanto comenzamos a conocer la utilidad de los UpdatePanels podemos tener la tentación de incluir 6 o 7 UpdatePanels en cada página, para aprovechar su utilidad y las funcionalidades que nos brindan.
Pero el peligro está en su falta de transpariencia. Visualmente solo se recarga su contenido, y los desarrolladores tienden a pensar que solo se envía y recibe del servidor el contenido del UpdatePanel.
Las páginas asp.net utilizan la propiedad viewstate de sus controles para almacenar el estado y contenido de cada uno de ellos. Pues bien, esos estados y contenidos son enviados al servidor cada vez que se refresca un UpdatePanel. Dependiendo del número de controles de servidor que tengamos en la página (y no digamos ya si tenemos por ejemplo un GridView), se pueden estar enviando y recibiendo muchos datos para refrescar pequeñas porciones de la misma.
La recomendación, por tanto, es utilizar los UpdatePanels en su justa medida.
Al incluir las librerías asp.net ajax en una página web, esta se vuelve muy lenta incluso para conexiones rápidas.
La razón de ello se encuentra en lo que hace “internamente” la página.
Al ser archivos .js dinámicos, algunos navegadores no los guardan en la caché, por lo que el sitio se vuelve más o menos lento cada vez que lo visitamos.
E incluso aunque lo guarde en caché, sigue siendo lento la primera vez que lo visitamos.
Además se suele notar en el navegador una latencia (de unos segundos) cada vez que se carga una página, como si el navegador se quedase “pensando” y siendo durante ese tiempo imposible interactuar con él.
Conclusión: lo que funciona más o menos rápido mientras hacemos pruebas en nuestra máquina local, se hace muy lento al probarlo por primera vez en un entorno real, sobre todo en la primera carga.
Copyright © Consultec, S.L. - Bilbao - Tel.: 902.23.66.66
[ Información legal ]
[ Privacidad de Datos ]
Siguenos en: