Übersicht über das ScriptManager-Steuerelement

Aktualisiert: November 2007

Das ScriptManager-Steuerelement verwaltet Clientskript für ASP.NET-Webseiten mit AJAX-Features. Standardmäßig registriert das ScriptManager-Steuerelement das Skript für Microsoft AJAX Library mit der Seite. Dadurch kann das Clientskript Typsystemerweiterungen verwenden und Features, wie das Teilrendering von Seiten und Webdienstaufrufe, unterstützen.

Dieses Thema enthält folgende Abschnitte:

  • Szenarien

  • Hintergrund

  • Codebeispiele

  • Klassenreferenz

Szenarien

Sie müssen ein ScriptManager-Steuerelement auf einer Seite verwenden, um die folgenden AJAX-Features von ASP.NET zu aktivieren:

  • Clientskriptfunktionen von Microsoft AJAX Library und jedes benutzerdefinierte Skript, das zum Browser gesendet werden soll. Weitere Informationen hierzu finden Sie unter Erstellen von benutzerdefiniertem Clientskript mithilfe der Microsoft AJAX-Bibliothek.

  • Teilrendering von Seiten, wodurch Bereiche der Seite unabhängig aktualisiert werden können, d. h. ohne Postback. Für die ASP.NET-Steuerelemente UpdatePanel, UpdateProgress und Timer ist ein ScriptManager-Steuerelement erforderlich, damit Teilrendering von Seiten unterstützt wird.

  • JavaScript-Proxyklassen für Webdienste, die den Zugriff über Clientskripts auf Webdienste und besonders gekennzeichnete Methoden in ASP.NET-Seiten ermöglichen. Dies erfolgt, indem Webdienste und Seitenmethoden als stark typisierte Objekte verfügbar gemacht werden.

  • JavaScript-Klassen, die Zugriff auf Anwendungsdienste für ASP.NET-Authentifizierung, Profile und Rollen ermöglichen.

Hintergrund

Wenn eine Seite ein oder mehrere UpdatePanel-Steuerelemente enthält, werden Teilrendering von Seiten im Browser durch das ScriptManager-Steuerelement verwaltet. Das Steuerelement interagiert mit dem Lebenszyklus der Seite, um Teilbereiche der Seite zu aktualisieren, die sich innerhalb des UpdatePanel-Steuerelements befinden. Weitere Informationen finden Sie unter Übersicht über das Teilrendering von Seiten.

Die EnablePartialRendering-Eigenschaft des ScriptManager-Steuerelements bestimmt, ob Teilaktualisierungen der Seite möglich sind. Standardmäßig hat die EnablePartialRendering-Eigenschaft den Wert true. Standardmäßig ist das Teilrendering von Seiten aktiviert, wenn ein ScriptManager-Steuerelement der Seite hinzugefügt wird. Weitere Informationen über die Verwendung eines UpdatePanel-Steuerelements mit dem ScriptManager-Steuerelement finden Sie unter UpdatePanel-Steuerelement – Einführung und Erstellen einer einfachen ASP.NET-Seite mit mehreren UpdatePanel-Steuerelementen.

Behandeln von Fehlern beim Teilrendering von Seiten

Beim Teilrendering von Seiten können Sie Fehler folgendermaßen behandeln:

  • Legen Sie die AllowCustomErrorsRedirect-Eigenschaft fest. Hiermit wird bestimmt, wie der benutzerdefinierte Fehlerabschnitt der Datei Web.config verwendet wird, wenn ein Fehler bei einem asynchronen Postback auftritt.

  • Behandeln Sie das AsyncPostBackError-Ereignis des ScriptManager-Steuerelements, das ausgelöst wird, wenn ein Seitenfehler bei einem asynchronen Postback auftritt.

  • Legen Sie die AsyncPostBackErrorMessage-Eigenschaft als Fehlermeldung fest, die an den Browser gesendet wird.

Verwenden von Typsystemerweiterungen

Durch Microsoft AJAX Library werden Typsystemerweiterungen zu JavaScript hinzugefügt, die Namespaces, Vererbung, Schnittstellen, Enumerationen, Reflektion und Hilfsfunktionen für Zeichenfolgen und Arrays bereitstellen. Diese Erweiterungen stellen Funktionen in Clientskripts zur Verfügung, die mit denen von .NET Framework vergleichbar sind. Mit diesen Funktionen können AJAX-fähige ASP.NET-Anwendungen auf eine strukturierte Art geschrieben werden. Hierdurch wird die Verwaltung und das Hinzufügen von Features oder Funktionen vereinfacht. Durch das Hinzufügen eines ScriptManager-Steuerelements zu einer ASP.NET-Webseite werden die Typsystemerweiterungen automatisch eingeschlossen, sodass die Bibliothek im Clientskript verwendet werden kann. Weitere Informationen finden Sie unter Erstellen von benutzerdefiniertem Clientskript mithilfe der Microsoft AJAX-Bibliothek.

Registrieren eines benutzerdefinierten Skripts

Verwenden Sie das ScriptManager-Steuerelement zur Verwaltung der Ressourcen, die Sie für Steuerelemente erstellt haben, die an Teilaktualisierungen beteiligt sind. Ressourcen schließen Skripts, Formate, ausgeblendete Felder und Arrays ein. Eine Scripts-Auflistung des ScriptManager-Steuerelements enthält ein ScriptReference-Objekt für jedes Skript, das dem Browser zur Verfügung steht. Sie können die Skripts deklarativ oder programmgesteuert angeben.

Darüber hinaus stellt das ScriptManager-Steuerelement Registrierungsmethoden zur Verfügung, die Sie zur programmgesteuerten Verwaltung des Clientskripts und ausgeblendeten Feldern verwenden können. Sie müssen für die Registrierung von Skripts oder ausgeblendeten Feldern, die Teilaktualisierungen von Seiten unterstützen, die Registrierungsmethoden des ScriptManager-Steuerelements aufrufen. (Um Skripts zu registrieren, die nicht für die Teilaktualisierung von Seiten benötigt werden, verwenden Sie die Methoden der ClientScriptManager-Klasse.)

Hinweis:

Skripts auf der Seite, die mit dem ScriptManager-Steuerelement registriert wurden, und alle Skripts für die Ereignisbehandlung müssen sich innerhalb form-Elements auf der Seite befinden. Andernfalls wird das Skript weder registriert noch ausgeführt.

Eine Liste der Registrierungsmethoden für ClientScriptManager-Steuerelemente finden Sie unter Erstellen von benutzerdefiniertem Clientskript mithilfe der Microsoft AJAX-Bibliothek und in der ClientScriptManager-Klassenübersicht.

Registrieren von Webdiensten

Für die Registrierung eines Webdiensts, den Sie von einer AJAX-fähigen ASP.NET-Seite anrufen möchten, fügen Sie den Webdienst der Services-Auflistung des ScriptManager-Steuerelements hinzu. Das ASP.NET-AJAX-Framework generiert in der Services-Auflistung ein Clientproxyobjekt für jedes ServiceReference-Objekt. Die Proxyklassen und ihre stark typisierten Member vereinfachen die Verwendung von Webdiensten aus dem Clientskript.

Sie können der Services-Auflistung programmgesteuert ServiceReference-Objekte hinzufügen, um zur Laufzeit Webdienste zu registrieren. Weitere Informationen hierzu finden Sie unter Webdienste in ASP.NET-AJAX.

Verwenden der Dienste für Authentifizierung, Profile und Rollen aus dem Clientskript

Microsoft AJAX Library enthält Proxyklassen zum Aufrufen von ASP.NET 2.0-Anwendungsdiensten für Formularauthentifizierung, Rollen und Profile direkt aus JavaScript. Wenn Sie einen benutzerdefinierten Authentifizierungsdienst verwenden möchten, können Sie ihn mithilfe des ScriptManager-Steuerelements registrieren. Weitere Informationen finden Sie unter Verwenden der Formularauthentifizierung mit ASP.NET-AJAX, Verwenden von Profilinformationen mit ASP.NET-AJAX und Verwenden von Rolleninformationen mit ASP.NET-AJAX.

Die ScriptManagerProxy-Klasse

Der Seite kann nur eine Instanz des ScriptManager-Steuerelements hinzugefügt werden. Die Seite kann das Steuerelement entweder direkt enthalten oder auch indirekt in einer geschachtelten Komponente. Dabei kann es sich um ein Benutzersteuerelement, die Inhaltsseite einer Masterseite oder auch um eine geschachtelte Masterseite handeln. Wenn eine Seite bereits ein ScriptManager-Steuerelement enthält, eine geschachtelte oder übergeordnete Komponente jedoch zusätzliche Features des ScriptManager-Steuerelements benötigt, kann die Komponente ein ScriptManagerProxy-Steuerelement einschließen. Mit dem ScriptManagerProxy-Steuerelement können beispielsweise Skripts und Dienste hinzugefügt werden, die spezifisch für geschachtelte Komponenten sind.

Codebeispiele

AJAX-Anwendungsbeispiele

Exemplarische Vorgehensweise: Erstellen einer AJAX-fähigen Website

Exemplarische Vorgehensweise: Globalisieren eines Datums mit Clientskript

Erstellen von benutzerdefiniertem Clientskript mithilfe der Microsoft AJAX-Bibliothek

Exemplarische Vorgehensweise: Erstellen und Verwenden eines AJAX-fähigen Webdiensts

UpdatePanel-Steuerelement – Einführung

UpdateProgress-Steuerelement – Einführung

Exemplarische Vorgehensweise: Einführung in das Timer-Steuerelement

Dynamisches Zuweisen von Skriptverweisen

Erstellen eines Extendersteuerelements zum Zuordnen eines Clientverhaltens zu einem Webserversteuerelement

Hinzufügen von Clientfunktionen zu einem Webserversteuerelement

Erstellen benutzerdefinierter AJAX-Clientsteuerelemente

Erstellen von benutzerdefinierten nicht visuellen Clientkomponenten

Klassenreferenz

Klasse

Beschreibung

ScriptManager

Ein Serversteuerelement, das Skriptressourcen für den Browser verfügbar macht. Zu den Skriptressourcen gehören Microsoft AJAX Library und die Funktionalität zum Teilrendering der Seite.

ScriptManagerProxy

Ein Serversteuerelement, mit dem geschachtelte Komponenten Verweise auf Skripts und Webdienste hinzufügen können, wenn die Seite bereits ein ScriptManager-Steuerelement enthält.

Siehe auch

Konzepte

Übersicht über den Lebenszyklus von ASP.NET-Seiten

Übersicht über das Teilrendering von Seiten

Webdienste in ASP.NET-AJAX