Informationen
Das angeforderte Thema wird unten angezeigt. Es ist jedoch nicht in dieser Bibliothek vorhanden.
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Übersicht über Microsoft AJAX

Mit AJAX erstellen Sie Anwendungen, die eine höhere Benutzerfreundlichkeit bieten und reaktionsschneller sind. Sie können AJAX-Funktionen verwenden, um serverbasierte ASP.NET Web Forms-Anwendungen mit serverseitigen ASP.NET-Steuerelementen (z. B. mit dem UpdatePanel-Steuerelement) zu verbessern.

HinweisHinweis

Verwenden Sie jQuery, wenn Sie clientseitige AJAX-Interaktivität erstellen möchten, ohne Serversteuerelemente zu verwenden. In Visual Studio ist eine jQuery-Bibliothek in der Anwendung enthalten, wenn Sie ein Projekt mit der Projektvorlage ASP.NET-Website, ASP.NET-Webanwendung oder ASP.NET MVC 3-Webanwendung erstellen. Wenn Sie jQuery für die Entwicklung verwenden, stellt Visual Studio IntelliSense zur Verfügung, und im Microsoft-Netzwerk für die Inhaltsübermittlung (Content Delivery Network, CDN) finden Sie herunterladbare Versionen der jQuery-Bibliothek zur effizienten Bereitstellung. Weitere Informationen finden Sie auf der jQuery-Website.

Dieses Thema befasst sich mit der Verbesserung von serverbasierten ASP.NET Web Forms-Anwendungen.

Web Forms-Anwendungen, die AJAX-Funktionen verwenden, bieten die folgenden Funktionen:

  • Vertraute interaktive Benutzeroberflächenelemente, zum Beispiel Statusanzeigen, QuickInfos und Popupfenster.

  • Höhere Effizienz für Web Forms-Anwendungen, da wesentliche Teile der Verarbeitung einer Webseite im Browser ausgeführt werden können.

  • Teilaktualisierungen von Seiten, bei denen nur die Teile der Webseite aktualisiert werden, die sich geändert haben.

  • Integration des Clients in ASP.NET-Anwendungsdienste für Formularauthentifizierung, Rollen und Benutzerprofile.

  • Automatisch generierte Proxyklassen, die das Aufrufen von Webdienstmethoden durch Clientskripts vereinfachen.

  • Möglichkeit der Anpassung von Serversteuerelementen, um Clientfunktionen einzuschließen.

  • Unterstützung für die beliebtesten Browser. Dazu gehören Microsoft Internet Explorer, Mozilla Firefox und Apple Safari.

Eine Microsoft AJAX-Webanwendung besteht entweder aus einer reinen Client-Projektmappe oder einer Projektmappe mit Client- und Serverprojekten. Eine reine Client-Projektmappe verwendet eine Microsoft AJAX-Bibliothek, aber keine ASP.NET-Serversteuerelemente. Zum Beispiel kann eine HTML-Seite script-Elemente enthalten, die auf die JS-Dateien der Microsoft AJAX-Bibliothek verweisen. Mithilfe der Microsoft AJAX-Bibliothek können AJAX-Anwendungen die gesamte Verarbeitung auf dem Client ausführen. Ein Projektmappe mit Client- und Serverprojekten besteht aus der Microsoft AJAX-Bibliothek und aus ASP.NET-Serversteuerelementen.

Die folgende Abbildung zeigt die Funktionalitäten, die in den Clientskriptbibliotheken enthalten sind, und Serverkomponenten, die in .NET Framework 4 enthalten sind.

Microsoft AJAX-Client- und Serverarchitektur

ASP.NET AJAX-Server- und -Clientarchitektur

Die Abbildung zeigt die Funktionalität der clientbasierten Microsoft AJAX-Bibliothek, die Unterstützung für das Erstellen von Clientkomponenten, Browserkompatibilität sowie Netzwerk- und Basisdienste bietet. Außerdem zeigt die Abbildung die Funktionalität serverbasierter Microsoft AJAX-Funktionen. Dazu gehören die Unterstützung für Skripts, Webdienste, Anwendungsdienste und Serversteuerelemente. In den folgenden Abschnitten wird die Abbildung ausführlicher beschrieben.

Die Clientarchitektur schließt Bibliotheken für Komponentenunterstützung, Browserkompatibilität, Netzwerk- und Basisdienste ein.

Komponenten

Clientkomponenten ermöglichen umfangreiche Aktionen ohne Postbacks im Browser. Komponenten werden in drei Kategorien eingeteilt:

  • Komponenten, die keine visuellen Objekte sind und keinen Code kapseln.

  • Verhalten, das das Verhalten von vorhandenen DOM-Elementen erweitert.

  • Steuerelemente, die ein neues DOM-Element mit benutzerdefiniertem Verhalten darstellen.

Der von Ihnen verwendete Komponententyp ist von der Art des gewünschten Clientverhaltens abhängig. Beispielsweise kann ein Wasserzeichen für ein vorhandenes Textfeld erstellt werden, indem dem Textfeld ein Verhalten zugeordnet wird. Weitere Informationen finden Sie unter Erstellen von Clientkomponenten und Steuerelementen.

Browserkompatibilität

Die Browserkompatibilitätsebene stellt Microsoft AJAX-Skriptkompatibilität für die am häufigsten verwendeten Browser bereit (einschließlich Microsoft Internet Explorer, Mozilla Firefox und Apple Safari). Dadurch können Sie dasselbe Skript schreiben, unabhängig davon, für welchen der unterstützten Browser dies vorgesehen ist. Weitere Informationen finden Sie unter Browsersicherheitseinstellungen für AJAX-fähige ASP.NET-Seiten.

Netzwerk

Die Netzwerkebene regelt die Kommunikation zwischen Skripts im Browser und webbasierten Diensten und Anwendungen. Außerdem verwaltet sie asynchrone Remotemethodenaufrufe. In vielen Szenarien, zum Beispiel Teilaktualisierungen einer Seite, bei denen das UpdatePanel-Steuerelement verwendet wird, wird automatisch die Netzwerkebene verwendet, sodass Sie keinerlei Code schreiben müssen.

Die Netzwerkebene unterstützt auch den Zugriff auf serverbasierte Formularauthentifizierung, Rolleninformationen und Profilinformationen in Clientskript. Diese Unterstützung steht auch Webanwendungen zur Verfügung, die nicht mithilfe von ASP.NET erstellt wurden, sofern die Anwendung auf die Microsoft Ajax Library zugreifen kann.

Basisdienste

Die AJAX-Clientskriptbibliotheken in ASP.NET bestehen aus JavaScript-Dateien (.js), die Funktionen zur objektorientierten Entwicklung bereitstellen. Die objektorientierten Funktionen, die in den Microsoft AJAX-Bibliotheken enthalten sind, ermöglichen ein hohes Maß an Konsistenz und Modularität bei der Clientskripterstellung. Die folgenden Basisdienste sind Teil der Clientarchitektur:

  • Objektorientierte Erweiterungen von JavaScript, z. B. Klassen, Namespaces, Ereignisbehandlung, Vererbung, Datentypen und Objektserialisierung.

  • Eine Basisklassenbibliothek, die Komponenten wie Zeichenfolgen-Generatoren und erweiterte Fehlerbehandlung einschließt.

  • Unterstützung für JavaScript-Bibliotheken, die entweder in einer Assembly eingebettet sind oder als eigenständige JavaScript-Dateien (.js) zur Verfügung gestellt werden. Das Einbetten von JavaScript-Bibliotheken in Assemblys kann die Bereitstellung von Anwendungen vereinfachen und bei der Lösung von Versionsproblemen helfen.

  • Weitere Informationen finden Sie unter Erstellen von benutzerdefiniertem Clientskript mithilfe der Microsoft AJAX-Bibliothek.

Debuggen und Fehlerbehandlung

Die Basisdienste enthalten die Sys.Debug-Klasse, die Methoden zur Verfügung stellt, um Objekte in lesbarer Form am Ende einer Webseite anzuzeigen. Außerdem können Sie mithilfe dieser Klasse Verfolgungsmeldungen anzeigen, Assertions verwenden und den Debugger beeinflussen. Eine erweiterte Error-Objekt-API stellt hilfreiche Ausnahmedetails mit Unterstützung für Release- und Debugmodus bereit. Weitere Informationen finden Sie unter Übersicht über das Debuggen und die Ablaufverfolgung von AJAX-Anwendungen.

Globalisierung

Die AJAX-Server- und Clientarchitektur in ASP.NET stellt ein Modell für die Lokalisierung und Globalisierung von Clientskript bereit. Dadurch können Sie Anwendungen entwerfen, die nur eine Codebasis verwenden, um Benutzeroberflächenelemente für viele verschiedene Gebietsschemas (Sprachen und Kulturen) zur Verfügung zu stellen. Durch die AJAX-Architektur ist es beispielsweise möglich, dass Date- oder Number-Objekte in JavaScript-Code automatisch den Kultureinstellungen im Browser des Benutzers entsprechend formatiert werden, ohne dass ein Postback zum Server erforderlich ist. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Globalisieren eines Datums mit Clientskript.

Die Serverteile, die die AJAX-Entwicklung unterstützen, bestehen aus ASP.NET-Webserversteuerelementen und Komponenten, die die Benutzeroberfläche und die Vorgänge einer Anwendung verwalten. Die Serverteile verwalten auch die Serialisierung, Validierung und Steuerelementerweiterbarkeit. Außerdem stehen ASP.NET-Webdienste zur Verfügung, mit denen Sie auf ASP.NET-Anwendungsdienste für die Formularauthentifizierung, Rollen und Benutzerprofile zugreifen können.

Skriptunterstützung

AJAX-Funktionen in ASP.NET werden im Allgemeinen mit Clientskriptbibliotheken implementiert, die die Verarbeitung nur auf dem Client ausführen. Sie können AJAX-Funktionen auch mit Serversteuerelementen implementieren, die Skripts unterstützen, die vom Server an den Client gesendet werden.

Sie können auch benutzerdefinierte Clientskripts für Ihre ASP.NET-Anwendungen erstellen. In diesem Fall können Sie AJAX-Funktionen auch dazu verwenden, die benutzerdefinierten Skripts als statische JS-Dateien (auf dem Datenträger) oder als JS-Dateien zu verwalten, die als Ressourcen in einer Assembly eingebettet sind.

AJAX-Funktionen schließen ein Modell für den Release- und den Debugmodus ein. Der Releasemodus stellt bei minimiertem Skriptumfang eine Fehlerüberprüfung und eine Ausnahmebehandlung bereit, die in Hinsicht auf die Leistung optimiert ist. Der Debugmodus bietet robustere Debugfeatures, z. B. Typ- und Argumentüberprüfung. ASP.NET führt die Debugversionen aus, wenn der Debugmodus für die Anwendung eingestellt ist. Dies ermöglicht Ihnen das Auslösen von Ausnahmen in Debugskripts, während der Umfang des Releasecodes minimiert wird.

Die Skriptunterstützung für AJAX in ASP.NET dient dazu, zwei wichtige Funktionen bereitzustellen:

Lokalisierung

Die Microsoft AJAX-Architektur basiert auf der Grundlage des ASP.NET 2.0-Lokalisierungsmodells. Sie bietet zusätzliche Unterstützung für lokalisierte JS-Dateien, die in einer Assembly eingebettet sind oder auf einem Datenträger zur Verfügung stehen. ASP.NET passt sich lokalisierten Clientskripts und Ressourcen für bestimmte Sprachen und Regionen automatisch an.

Weitere Informationen finden Sie unter den folgenden Themen:

Webdienste

Wenn ASP-Funktionalität in einer ASP.NET-Webseite vorhanden ist, können Sie Clientskripts verwenden, um sowohl ASP.NET-Webdienste (.asmx) als auch Windows Communication Foundation (WCF)-Dienste (.svc) aufzurufen. Die erforderlichen Skriptverweise werden der Seite automatisch hinzugefügt. Diese wiederum erzeugen automatisch die Proxyklassen des Webdiensts, die vom Clientskript verwendet werden, um den Webdienst aufzurufen.

Sie können auch ohne Verwendung von Microsoft AJAX-Serversteuerelementen auf ASP.NET-Webdienste zugreifen (wenn Sie beispielsweise eine andere Webentwicklungsumgebung verwenden). Dies können Sie erreichen, indem Sie manuell Verweise auf die Microsoft Ajax Library, auf Skriptdateien und den Webdienst selbst einfügen. Zur Laufzeit generiert ASP.NET die Proxyklassen, die Sie zum Aufrufen der Dienste verwenden können. Weitere Informationen finden Sie unter ASP.NET AJAX und Webdienste.

Anwendungsdienste

Anwendungsdienste in ASP.NET sind integrierte Webdienste, die auf ASP.NET-Formularauthentifizierung, Rollen und Benutzerprofilen basieren. Diese Dienste können durch Clientskripts in einer Webseite mit AJAX-Funktionalität, durch eine Windows-Clientanwendung oder durch einen WCF-kompatiblen Client aufgerufen werden. Weitere Informationen und Beispiele finden Sie unter ASP.NET-Webdienste .

Serversteuerelemente

AJAX-Serversteuerelemente bestehen aus Server- und Clientcode, der integriert ist, um einen Client mit umfangreichen Funktionen zur Verfügung zu stellen. Wenn Sie ein AJAX-fähiges Steuerelement zu einer ASP.NET-Webseite hinzufügen, sendet die Seite automatisch unterstützende Clientskripts an den Browser, um die AJAX-Funktionalität zu gewährleisten. Sie können zusätzlichen Clientcode zur Verfügung stellen, um die Funktionalität eines Steuerelements anzupassen, dies ist jedoch nicht erforderlich.

In der folgenden Liste werden die am häufigsten verwendeten AJAX-Serversteuerelemente erläutert.

Steuerelement

Beschreibung

ScriptManager

Verwaltet Skriptressourcen für Clientkomponenten, Teilrendering von Seiten, Lokalisierung, Globalisierung und angepasste Benutzerskripts. Das ScriptManager-Steuerelement ist erforderlich, um die Steuerelemente UpdatePanel, UpdateProgress und Timer zu verwenden. Beim Erstellen einer reinen Client-Projektmappe ist das ScriptManager-Steuerelement jedoch nicht erforderlich.

UpdatePanel

Ermöglicht das Aktualisieren ausgewählter Teile der Seite statt einer Aktualisierung der gesamten Seite mithilfe eines synchronen Postbacks.

UpdateProgress

Stellt Statusinformationen über Teilaktualisierungen von Seiten in UpdatePanel-Steuerelementen bereit.

Timer

Führt in festgelegten Intervallen Postbacks aus. Sie können das Timer-Steuerelement verwenden, um die gesamte Seite zu senden. Sie können es jedoch auch zusammen mit dem UpdatePanel-Steuerelement verwenden, um Teilaktualisierungen in festgelegten Intervallen auszuführen.

Sie können auch benutzerdefinierte ASP.NET-Serversteuerelemente erstellen, die AJAX-Clientverhalten einschließen. Benutzerdefinierte Steuerelemente, die die Funktionen anderer ASP.NET-Websteuerelemente verbessern, werden als Extendersteuerelemente bezeichnet. Weitere Informationen finden Sie unter Hinzufügen von Ajax-Funktionalität zu ASP.NET-Steuerelementen und Übersicht über Microsoft AJAX-Extendersteuerelemente.

Das Ajax Control Toolkit enthält Steuerelemente, die Sie zum Erstellen von interaktiven AJAX-fähigen Webanwendungen mit hoher Reaktionsgeschwindigkeit verwenden können. Diese Steuerelemente erfordern keine JavaScript- oder AJAX-Kenntnisse. Der Entwurf der Steuerelemente basiert auf Konzepten, die ASP.NET Web Forms-Anwendungsentwicklern vertraut sind. Mit dem AJAX Control Toolkit können Sie AJAX-fähige ASP.NET Web Forms-Anwendungen und ASP.NET-MVC-Webanwendungen erstellen, indem Sie Steuerelemente aus der Toolbox in Visual Studio auf eine Seite ziehen. Das AJAX Control Toolkit ist ein Open Source-Projekt, das Teil der CodePlex Foundation ist. Weitere Informationen finden Sie unter AJAX Control Toolkit auf der CodePlex-Website.

HinweisHinweis

Verwenden Sie jQuery, wenn Sie clientseitige AJAX-Interaktivität erstellen möchten, ohne Serversteuerelemente zu verwenden. Weitere Informationen finden Sie auf der jQuery-Website.

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.

Community-Beiträge

Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.