Blog Home  Home RSS 2.0 Atom 1.0 CDF  
Andreas Mersch - ASP.NET AJAX
software development and more...
 
 Friday, January 19, 2007
AJAX... Was ist das? AJAX steht für Asynchronous JavaScript and XML und beschreibt eine Technik, Inhalte einer Webseite je nach Kontext nachzuladen, ohne die Seite im Ganzen zu aktualisieren. Dr. Schwichtenberg zeigte dies am Beispiel einer Demowebsite für Flugauskünfte und Flugbuchungen. Hierbei wurde nach einer Suchanfrage lediglich der Bereich des Suchergebnisses nachgeladen.

Ich habe bereits ähnliches programmiert, jedoch ohne die Verwendung der Michrosoft ASP.NET AJAX (früher Codename "Atlas") Erweiterung - s. http://www.fdp-bottrop.de

Die Beispiele aus dem Webcast hat Dr. Schwichtenberg auf seiner Homepage unter http://www.IT-Visions.de/WWWings zum Download bereitgestellt. Zu laden ist das Paket für .NET 3.0, da dieses die AJAX Komponenten enthält. In seinem Vortrag unterschied Schwichtenberg zwischen AJAX im engeren und AJAX im weiteren Sinne. AJAX im engeren Sinne ist nach seiner Aussage alles, was unmittelbar mit der Webseite und den asynchronen Requests zurück zum Server zusammen hängt. AJAX im weiteren Sinne hingegen sind Erweiterungen rund um das Thema AJAX, wie clientseitige Control-Bibliotheken. So hat auch Michrosoft auf der Website http://ajax.asp.net neben der ASP.NET AJAX Komponente auch eine Sammlung mit etwa 30 Client-Controls zum Download bereitgestellt (s. ASP.NET AJAX Control Toolkit). Auf der Website http://www.ajaxian.com hingegen findet sich bereits eine Liste von über 260 AJAX Bibliotheken für die unterschiedlichsten Plattformen.

AJAX verwendet die jeweilige Browser Implementierung des XmlHttpRequest Objektes. In den Browsern Firefox, Safari u.ä. ist dieses Objekt Bestandteil der JavaScript Engine. Im Internet Explorer bis Version 6 einschließlich wird das XmlHttpRequest Objekt über eine ActiveX Komponente realisiert. Zu beachten ist jedoch bei allen Browsern, dass die jeweilige Implementierung unterschiedlich sein kann. Hier ist also gründliches Testen erforderlich.

Bevor man sein eigenes AJAX Projekt mit ASP.NET 2.0 starten kann, müssen die AJAX Komponenten von der Website http://ajax.asp.net geladen und installiert werden. Anschließend kann im Visual Studio 2005 ein neues Webprojekt gestartet oder ein bestehendes Projekt mit AJAX Komponenten erweitert werden. Damit eine Seite AJAX Funktionalitäten besitzt muss zunächst aus der Toolbox das Script Manager Element auf der Seite platziert werden. Dieses Element erzeugt zur Laufzeit die notwendigen JavaScript Codeblöcke. Danach ist das Update Panel Element in der Seite zu verwenden und alle übrigen ASP.NET Controls, die innerhalb eines AJAX Requests verwendet werden sollen dort hinein zu ziehen. Auf diese Art und Weise können einfache Datenbindungen und Datenaktualisierungen mit wenigen Mausklicks realisiert werden.

Für erweiterte Funkionalitäten müssen eigene Webservices erstellt werden. Wichtig hierbei ist, das es sich bei diesen Webservices um JSON Webservices und nicht um klassische SOAP Webservices handelt. Die Abkürzung JSON steht für JavaScript Object Notation und ist eine auf AJAX optimierte Webservice Variante. Ein solcher Webservice kann einfach durch das Class Attribute

[System.Web.Script.Services.ScriptService()]

über der Klassendeklaration erstellt werden. Anschließend muss im oben bereits genannten Script Manager ein Verweis auf diesen Webservice erstellt werden. Für eine detaillierte Beschreibung der Vorgehensweise empfehle ich jedoch die Folien des Vortrages und die Beispiele von Dr. Schwichtenberg.

Der nächste Webcast zu diesem Thema findet am 6.2., der dritte Teil am 8.2. statt.

1/19/2007 7:37:27 AM (Mitteleuropäische Zeit , UTC+01:00)  #      ASP.NET  | 
Copyright © 2012 andreas mersch. All rights reserved.
DasBlog 'Portal' theme by Johnny Hughes.
Pick a theme: