
ASP.NET es un conjunto de tecnologías de desarrollo Web producidas por Microsoft, que se usa para construir sitios Web dinámicos, aplicaciones Web y basadas en XML. Ajax, por su parte, es una magnífica tecnología que proporciona a los desarrolladores una base para crear aplicaciones basadas en la Web que ofrezcan una mejora en la usabilidad. Ajax tiene el poder de revolucionar el modo en que se diseñan las aplicaciones basadas en la Web.
Este libro le ofrece una información minuciosa sobre qué ofrece Ajax y cómo obtener todo el provecho en el desarrollo de su aplicación. En la exploración de cómo trabaja Ajax con .NET, se familiarizará con DHTML, el papel que desempeñan JavaScript y el Modelo de Objetos del Documento, y el objeto XMLHttpRequest, que es la base de Ajax. Después examinará las características propias de Ajax que incluyen ASP.NET y explorará con detalle la biblioteca Ajax.NET Professional. Finalmente, explorará la creación de scripts en el cliente, así como la construcción y la utilización de controles con Microsoft Atlas. Con un capítulo completo dedicado a la depuración, tendrá todo lo que necesita para utilizar esta tecnología de vanguardia.



Introducción
¿Para quién es este libro?
Lo que necesita para utilizar este libro
¿Qué abarca este libro?
Convenciones
Código fuente
1. Introducción a Ajax con ASP.NET
Tendencias de desarrollo
Desarrollo con ASP.NET
Metodología de diseño
Los problemas que resuelve ASP.NET
Entonces, ¿cuál es el problema?
Mejorando la usabilidad
¿Qué es Ajax?
Las ventajas de Ajax
Historia de Ajax
Las tecnologías que forman Ajax
Ejecución de aplicaciones Ajax
¿Quién utiliza Ajax?
Los problemas que Ajax no resuelve
Resumen
2. Introducción a DHTML
Qué es JavaScript, y qué no
Reglas generales del JavaScript
Su primer bloque de código JavaScript
document.write()
Utilizar document.write() en bucles for() anidados
window.status y eventos
Información introducida por el usuario
Aspectos de seguridad en las entradas de texto
Cancelar la salida normal de un evento
Impedir que un evento se eleve
Trabajar con imágenes
Trabajar con el atributo image src
Utilizar las funciones
Rellenar las opciones de mediante programación
Utilización de la propiedad innerHTML
Manipular la hoja de estilos
Crear un menú contextual
Resumen
3. JavaScript y el Modelo de Objetos del Documento
De estático a dinámico (Una breve historia)
Intentos de estandarización
Profundizando en los fundamentos de JavaScript
Funciones y sintaxis
Manejadores de eventos
La esencia del lenguaje
Variables
Comentarios
Tipos de datos
Códigos de escape
Tipado débil o dinámico
Tipos compuestos
Operadores y expresiones
Flujos de control y bucles
Bucles while y for
Romper un bucle infinito
Más sobre objetos y funciones
Propiedades y métodos comunes
Objetos personalizados y mecanismos avanzados de objeto
Resumen del contenido por ahora
El Modelo de Objetos del Documento
La estandarización del modelo de objetos (o ausencia de ello)
Los niveles de DOM
Trabajar con DOM
Manipular nodos
Crear nodos
Insertar y añadir nodos
Eliminar, sustituir y copiar nodos
Propiedades de un nodo
Colecciones genéricas del nivel 0 de DOM
DOM, los estilos y CSS
La propiedad style y las convenciones de nomenclatura
Modificar hojas de estilo
Resumen
4. El Objeto XMLHttpRequest
Ejemplos de código de este capítulo
¿Qué es el objeto XMLHttpRequest?
Un poco de historia
Peticiones síncronas
Cómo funciona
Peticiones asíncronas
Cómo funciona
Ocuparse de los datos de respuesta
Usar la propiedad responseText
Usar la propiedad responseXML
Mejorar la usabilidad
Pasar parámetros al servidor
Manejadores HTTP
¿Qué tal los servicios Web?
Cómo funciona
Invocar servicios Web: Algunas precauciones
Resumen
5. Comunicación de datos: XML, XSLT y JSON
XML
Historia del XML
Documentos XML
Corrección del elemento XML
Referencias a números y caracteres inusuales
DTD
XML Schema
Interpretar XML
Interpretar mediante DOM
Interpretar mediante SAX
Resumen de XML
XSLT
Cómo tiene lugar el procesamiento
Funciones nativas
XSLT
XSLT
XSLT
XSLT
XSLT
XSLT
Procesar con XSLT
Escribir funciones en XSLT
X Path
Integrar XML y Ajax
JSON
El diseño de JSON
Ejemplo con JSON
Resumen
6. Qué contiene ASP.NET
Nuevos controles
Control TreeView
Cómo funciona
Control GridView
Cómo funciona
Control DetailsView
Compatibilidad con navegadores
Cómo funciona
El entorno de trabajo
Interfaz ICallbackEventHandler
Page.ClientScript - System.Web.UI.ClientScriptManager
Page.ClientScript.GetCallbackEventReference
Hacer que todas las partes implicadas trabajen juntas
Obtener una referencia al callback
Implementar la interfaz ICallbackEventHandler
Iniciar el proceso asíncrono desde el servidor
Tratar en el cliente el resultado de una llamada asíncrona del lado del servidor
Capturar errores en el proceso asíncrono
Manejar datos complejos
Habilitar la página para callback asíncronos
Obtener los datos: Implementar la interfaz ICallback EventHandler
Ocuparse en el cliente de los datos devueltos
Limitaciones al devolver datos complejos en XML
Interfaz ICallbackContainer
Cómo funciona
Resumen
7. Biblioteca profesional de Ajax.NET
Conseguir Ajax.NET Pro
Preparar nuestra aplicación
Utilizando la biblioteca Ajax.NET Pro
Registrar nuestra clase page en Ajax.NET Pro
Registrar nuestros métodos en Ajax.NET Pro
Examinar el objeto Request
Ejecutar nuestro Ajax en el cliente
Profundizando en response.value
Devolver objetos personalizados
Más sobre callbacks y context
Eventos de Request en Ajax.NET: Manteniendo actualizados a los usuarios
Errores, errores, errores. Ocurren, y los capturamos
Utilizando la biblioteca Ajax.NET Pro: Mirando bajo el capó
¿Cuándo se crea el proxy javaScript?
¿Qué hace JavaScript?
¿Qué ocurre en el servidor una vez se ha disparado el proxy JavaScript?
¿Cómo se ejecuta realmente el método del código subyacente y cómo se crea realmente la página?
¿Qué se devuelve realmente al cliente?
Resumen
8. Anatomía de la biblioteca Ajax.NET Pro
Obtener el código Ajax.NET Pro
¿Qué se consigue con la configuración de Web.Config en Ajax.NET Pro?
¿Qué pasa cuando registramos la clase página?
Cómo funciona
¿Qué papel juega el atributo Ajax.AjaxMethod()?
¿Cómo llega la llamada JavaScript al servidor y cómo vuelve?
¿Qué es un conversor Ajax.NET Pro?
Resumen
9. Otros entornos de trabajo Ajax para .NET
Entornos del lado del cliente
Sarissa
Crear un XMLHttpRequest utilizando el entorno Sarissa
Detectando características mediante el entorno Sarissa
Utilización del entorno Sarissa para cargar documentos XML asíncronamente
HTMLHttpRequest
MochiKit
Entornos del lado del servidor
Diferencias arquitectónicas
Estructuras de datos frente a HTML transformado
Paneles frente a controles personalizados
Opciones de configuración
Creando nuestro archivo de recursos
Introducción a los entornos de trabajo
Comfort ASP.NET
Configuración
Descargando archivos
Creando la solución
Referir ComfortASP.NET
Copiar el archivo de datos
Agregue el grupo ComfortASP.NET al cuadro de herramientas
Utilizar ComfortASP.NET
Ejemplo 1: Hello World
Ejemplo 2: Utilizar controles complejos
Ejemplo 3: El control Manager de ComfortASP.NET
Ejemplo 4: Control PanelUpdater (actualización periódica)
Lo que hemos aprendido
MagicAjax
Configuración
Descargando archivos
Creando la solución
Referir ComfortASP.NET
Actualizando Web.Config
Utilizar MagicAjax
Ejemplo 1: Hello World
Ejemplo 2: Retardo
Ejemplo 3: Ajax Call Helper (actualización periódica)
Ejemplo 4: Direct Scripting (micro-contenido)
Qué hemos aprendido
Anthem.NET
Configuración
Descargando archivos
Creando la solución
Referir ComfortASP.NET
Copiar el archivo de datos
Utilizar Anthem.NET
Ejemplo 1: Hello World
Ejemplo 2: Controles complejos
Ejemplo 3: Atributos personalizados
Ejemplo 4: Funciones del cliente
Ejemplo 5: Invocar a Page Method
Ejemplo 6: Direct Scripting (micro-contenido)
Ejemplo 7: Excepciones del servidor
Qué hemos aprendido
Resumen
10. Script Cliente de Atlas
Introducción a Atlas
Componentes principales
Soporte al servidor
Archivos JavaScript
Soporte para Ajax
Comunicación exclusivamente asíncrona
Agregar soporte para Atlas con el control ScriptManager
Comunicación con servicios Web
Generando proxy JavaScript
Llamando a los servicios Web
OnMethodComplete
OnServerTimeOut
OnServerException
Pasando tipos
Tipos de datos sencillos
Tipos de datos complejos
Conjuntos de datos
Tipos de datos personalizados
Guardando en caché los servicios Web
Ofrecer servicios Web desde un formulario
Extensiones Atlas para JavaScript
Mejoras del lenguaje
Controles
Object
Array
Date
Number
Boolean
String
RegExp
Espacios de nombres incorporados
Registrando espacios de nombres y clases en Atlas
Type.registerNameSpace
NamespaceName.ClassName.registerClass
NamespaceName.ClassName.registerAbstractClass
NamespaceName.ClassName.registerSealedClass
InterfaceName.registerInterface
NamespaceName.ClassName.registerBaseMethod
Espacios de nombres y clases
Herencia
Interfaces
Enumeraciones
Depuración
Depuración con debug.dump
Depuración con bucles for()
Notas especiales sobre scripts cliente de Atlas
Recursos utilizados
Resumen
11. Los controles de Atlas
Controles
Botones
Sys.UI.Data Controls
Controles de servidor
Actualizaciones parciales y el UpdatePanel
Cómo funciona
Actualizaciones programadas
Cómo funciona
Extensores de controles
AutoComplete
Vinculación de datos
Vinculación declarativa de datos
Cómo funciona
Vinculación programática de datos
Cómo funciona
Vinculando direcciones
Vinculando conversores
Validación
Cómo funciona
Cómo funciona
Comportamientos
Recursos utilizados
Resumen
12. Integración de Atlas con los servicios de ASP.NET
Examinando los servicios ASP.NET
Autenticación
Autenticación Windows
Autenticación básica
Autenticación por formulario
Autenticación por pasaporte
Autorización/Roles
Membresía
Perfiles
Personalización mediante Web Parts
Utilizar Atlas para integrar servicios en ASP.NET
Autenticación
Cómo funciona
Autorización/Roles
Cómo funciona
Acceso a perfiles vía Atlas
Los nombres de las propiedades del perfil
Cómo funciona
Cargar los datos del perfil
Cómo funciona
Guardar los datos del perfil
Evitar las trampas del servicio de perfiles
Implementar arrastrar y soltar vía Atlas
Resumen
13. Depuración
Depuración en el lado del servidor
Habilitar el soporte para la depuración
Establecer puntos de ruptura
JavaScript y la depuración en el lado del cliente
Herramientas y técnicas de comercio
Utilizar sentencias de alerta
Depuración de scripts con Visual Studio
Adentrándonos en el código: Paso a paso por instrucciones y por procedimientos
Otras maneras de llamar al depurador
Otras maneras de inspeccionar el valor de las variables
Utilizar la ventana Inspección
Utilizar la Ventana Comandos
La depuración de scripts hasta ahora
Herramientas de depuración del navegador
Internet Explorer
Firefox
Depurador JavaScript para Firefox: Venkman
El intermediario
Fiddler
Resumen
A. Comandos XSLT
Elementos XSLT
Funciones XSLT
Métodos propios de XSLT
Accesor
Boolean
Context
Datetime
Error/Trace
Node
Numeric
Sequence
String
URI
Índice alfabético
Otros clientes que compraron Ajax con ASP.NET, también compraron:
Otros libros de Ajax: