|
ASP.NET
mit C# |
|
Die Aufrufreihenfolge
der Methoden |
|
|
-
ASP.NET übernimmt das Aufrufen der einzelnen Methoden selbstständig.
Dazu müssen die Methoden nur überladen und/oder registriert werden.
Da der automatische Aufruf jedoch nicht transparent ist, muss insbesondere
im Bezug zum ViewState beachtet werden, dass dieser nicht mehr in der Render
Methode geändert werden kann (ViewState wird schon vorher gespeichert
(=zum Client geschickt) und kann deshalb in Render nicht mehr verändert
werden).
-
Der erste Aufruf einer Seite (also ein HTTP-GET) ruft keine EventHandler
auf. Diese werden nur nach einem HTTP-POST aufgerufen.
-
OnInit() wird überladen:
protected override void OnInit(EventArgs e)
{ .... }
-
LoadViewState wird überladen:
Dies ist nur notwendig, wenn selbstdefinierte Daten im ViewState abgelegt
wurden. Alle von ASP.NET verwalteten Daten werden automatisch aus dem ViewStare
gelesen und sind über die jeweiligen Get/Set Methoden zugreifbar.
protected override void LoadViewState(object savedState) { ..}
-
OnLoad wird überlanden:
protected override void OnLoad(EventArgs e) {... }
-
OnPreRender wird überladen. Hier kann das Setzen von Standardwerten
erfolgen. Die Methode kann auch leer sein.
protected override void OnPreRender( EventArgs e)
{ ... }
-
SaveViewState wird überladen. Wie LoadViewState ist dies nur
notwendig, wenn eigene Daten im ViewState gespeichert werden sollen.
protected override object SaveViewState() { .. }
-
Render wird überladen. Dies ist die wichtigste Methode,
hier weren alle Daten gesetzt um diese dann anden Client zurückzuschicken.
Das erzeugen der HTML Seite übernimmt ASP.NET automatisch, kann jedoch
über this.Response.Write(..) oder den HtmlTextWriter
auch expliziet implementiert werden.
protected override void Render(HtmlTextWriter w) { .. }
-
Alle override Methoden sollten die überladene Methode der Basisklasse
aufrufen um die normale Funktionalität nicht zu verhindern.
|
|
|
|
|