This post originated from an RSS feed registered with .NET Buzz
by -.
Original Post: ASP.NET: Die PostBack-Falle
Feed Title: Norbert Eder - Living .NET
Feed URL: http://feeds.feedburner.com/NorbertEder-Livingnet
Feed Description: Copyright (c)2005, 2006 by Norbert Eder
Irgendwann tappt jeder in die PostBack-Falle. So ist es auch mir passiert und daher dieser kurze Eintrag zu diesem Thema. Der Beginn macht eine kurze Einführung.
Was ist ein PostBack
Unter einem PostBack versteht man das senden einer Seite zum Server unter Verwendung des HTTP-Vers Post. Die Eingaben der gesendeten Seite werden vom Server verarbeitet und eine neue Seite generiert. Die gesamte Seite wird neu geladen.
Konkretes Problem
Beim Laden einer Seite (vor allem wenn Werte zugewiesen werden) sollte daher abgefragt werden, ob es sich tatsächlich um ein PostBack handelt. Hier ein konkreter Fall:
In diesem Fall wird ein PostBack nicht abgefragt. Nun werden beim Laden der Seite die vorhandenen Textfelder mit Werten befüllt. Werden diese verändert und wieder an den Server übertragen, werden die Änderungen beim neu Erstellen der Seite wieder überschrieben. Die geänderten Werte scheinen also am Client nicht mehr auf. Anders sieht dies aus, wenn die Wertezuweisung durch die Abfrage bezgl. eines PostBacks gesichert wird:
In diesem Fall werden die Daten korrekt am Client angezeigt - nämlich die geänderten.
Zu guter Letzt möchte ich noch die unterschiedlichen Lebenszyklen einer Seite anführen, da sich diese durch ein PostBack verändern und darauf entsprechend Rücksicht genommen werden muss.
Lebenszyklen
Erster Aufruf Die nachfolgenden Ereignisse bzw. Methoden werden beim initialen Aufruf einer Seite der Reihe nach abgearbeitet: