Amikor az UpdatePanel nem működik

Egyik webalkalmazás kezdőlapján több (három) lapozható lista is van. Mindegyiket LinkView-val valósítottuk meg. Felmerült az igény, hogy ezek a listák egymástól és az oldaltól függetlenül, aszinkron módon lapozhatóak legyenek. Elvileg erre való az UpdatePanel. Mindhárom listát be is burkoltam egy-egy UpdatePanelbe, ekkor jött a meglepetés: két lista szépen az UpdatePanelen belül lapozódott csak, míg a harmadik minden esetben teljes postbacket csinált és újratöltötte a teljes oldalt. Kicsit mérgelődtem és kattintgattam, ezalatt “elromlott” egy újabb lista is: így már kettőből csak egy volt hajlandó aszinkron újratöltődésre. Mindeközben a TFS-ben az oldalak ID-talanítása zajlott. És ez volt az igazi probléma! Sok próbálkozásba került, de kiderült: ha az UpdatePanelbe tett ListView Pagerének nincs ID-ja, akkor az nem képes aszinkron callback kiváltására, hanem teljes postbacket fog végrehajtani.



Dávid Zoltán

Dávid Zoltán Mérnök Informatikusként végeztem a BME-n, jelenleg webfejlesztéssel és gépi tanulással foglalkozom.

2009.07.31. 19:24:30 | Permalink | Hozzászólások: 2 | Tárgyszavak: ,




Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások


Dávid Zoltán Dávid Zoltán  (2009.08.02. 2:34:43)

Nem fogtam Rád. Talán észre sem veszik a nagyokosok, és azért nem dobnak exceptiont. Talán csak végigiterálnak az updatepanel vezérlőin, és aminek van ID-ja, ahhoz generlának egy olyan javascriptet, ami feliratkozik a vezérlő eseményére. Ennek meg nem volt ID-ja, így fel sem iratkozott. De ezt csak tippelem.

Balássy György (MS RD, ASP.NET MVP, MCTS) Balássy György (MS RD, ASP.NET MVP, MCTS)  (2009.08.01. 6:03:53)

Na szép, remélem rám fogtad :) A nagyokosok igazán beletehettek volna egy ArgumentException dobást, ha már építenek arra a tulajdonságra... :(