Laden...

Mehrere "kleine" UpdatePanels - Nachteile?

Erstellt von tikra vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.543 Views
tikra Themenstarter:in
185 Beiträge seit 2007
vor 13 Jahren
Mehrere "kleine" UpdatePanels - Nachteile?

Hallo,

ich habe folgendes Problem:

Ich habe in einem UpdatePanel 2 html-RadioBoxen, klicke ich auf die eine, so wird ein Teil des Formulars farbtechnische ausgegraut (clientseitig mittels JavaScript), klicke ich auf die andere passiert das inverse.
Ändere ich nun ein Steuerelement, welches einen Partial-PostBack innerhalb des UpdatePanels durchführt werden (verständlicherweise) diese clientseitigen Änderungen überschrieben.

Meine Überlegung: Ich könnte die UpdatePanels "kleiner" gestalten und nur um die serverseitigen Steuerelemente legen, d.h. nur deren Inhalte/Styles würden neu geschrieben.

Meine Frage: Gibt es irgendwelche Nachteile (Performance?), wenn ich so "viele kleine" UpdatePanels erzeuge?

Ich spreche in meinem Fall von 2 TextBoxen, und 4 DropDownLists, diese würde ich dann anstatt einem großen UpdatePanel in 3 kleine unterteilen.

Vielen Dank!

Gruß

timmi

1.433 Beiträge seit 2006
vor 13 Jahren

Meine Frage: Gibt es irgendwelche Nachteile (Performance?), wenn ich so "viele kleine" UpdatePanels erzeuge?

Gibt es. Das AjaxControlToolkit generiert sehr viele Scripts, die sehr gross sein können. Aus diesem Grund würde ich so ausgrauen etc. mittels JQuery realisieren. Ist performanter und bläht den Seitenquelltext nicht so auf.

Ich habe mal einen Vergleich mit einem TabPanel vom AjaxControlToolkit gemacht und dasselbe in grün mit JQuery. Der Seitensource steigt exponentiell zu jedem Control dass Du vom AjaxControlToolkit verwendest.

Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt

tikra Themenstarter:in
185 Beiträge seit 2007
vor 13 Jahren

Vom AjaxControlToolkit wollte ich jetzt erst einmal gar nicht sprechen, ich meinte die "normalen" UpdatePanels, keine TabPanels.

1.433 Beiträge seit 2006
vor 13 Jahren

Auch die UpdatePanels generieren viel Overhead.

Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt

tikra Themenstarter:in
185 Beiträge seit 2007
vor 13 Jahren

Andere Meinungen? Kann man das tatsächlich so stehen lassen?

Ich denke du willst eher darauf hinaus, UpdatePanels eher nicht zu benutzen und lieber mit WebMethods zu arbeiten oder?

Dies ist allerdings in diesem Stadium nicht mehr möglich, evtl. in zukünftigen Projekten,
wenn ich UpdatePanels SOWIESO verwende, dann wirkt sich die "Stückelung" in kleinere glaube ich nicht negativ aus oder? Die Daten, welche gesendet werden reduzieren sich ja eigentlich dadurch.

3.170 Beiträge seit 2006
vor 13 Jahren

Hallo,

Ändere ich nun ein Steuerelement, welches einen Partial-PostBack innerhalb des UpdatePanels durchführt werden (verständlicherweise) diese clientseitigen Änderungen überschrieben.

Das sollte doch kein Problem darstellen - du bekommst doch im PostBack mit welcher Radiobutton gesetzt ist, und könntest also serverseittig dementsprechend die gewünschten Elemente aktivieren/deaktivieren.

Die Daten, welche gesendet werden reduzieren sich ja eigentlich dadurch. Ich bin mir zwar nicht ganz sicher, aber das düfte so nicht stimmen. Der Browser führt vermutlich einen ganz normalen Post (mit allen zugehörigen Formulardaten) aus, und erst auf dem Server wird das dann partiell ausgewertet.
Der Overhead entsteht aber hauptsächlich in Richtung Server -> Client beim de rAntwort, und nicht im Request, da für den ScriptManager und die UpdatePanels jede Mange Script-Code generiert werden muss.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

1.433 Beiträge seit 2006
vor 13 Jahren

Der Overhead entsteht aber hauptsächlich in Richtung Server -> Client beim de rAntwort, und nicht im Request, da für den ScriptManager und die UpdatePanels jede Mange Script-Code generiert werden muss. Und genau das ist ja das Problem (ich dachte ich hät's erwähnt 😉 )

Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt

tikra Themenstarter:in
185 Beiträge seit 2007
vor 13 Jahren

Hallo,

Ändere ich nun ein Steuerelement, welches einen Partial-PostBack innerhalb des UpdatePanels durchführt werden (verständlicherweise) diese clientseitigen Änderungen überschrieben.
Das sollte doch kein Problem darstellen - du bekommst doch im PostBack mit welcher Radiobutton gesetzt ist, und könntest also serverseittig dementsprechend die gewünschten Elemente aktivieren/deaktivieren.

Die RadioButtons sind keine ASP-Elemente, reines html (finde es unnötig für mein Vorhaben dafür einen PostBack durchzuführen, sowas sollte man clientseitig halten können), ich reagiere bei einem Klick auf diese mit Farbänderungen und diese Farbänderungen werden bei einem PostBack überschrieben.

3.170 Beiträge seit 2006
vor 13 Jahren

Hallo,

unabhängig davon ab Du nun HTML-Elemente oder ASP.NET-Controls verwendest, kommen die Daten beim POST mit. Schau mal in Request.Params["myRadioName"].
Je nachdem wie der Wert gesetzt ist, kannst Du für die gewünschten Elemente die ReadOnly- bzw. Enabled-Property setzen, oder wenn es sich ebenfalls um reine HTML-Elemente handelt, halt eben über die Attribute enablen/disablen.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca