I was chatting with someone at the event Mark and I did earlier today about the UpdatePanel in ASP.NET AJAX and I realised afterwards that I may have given a rather pessimistic view of performance so let me correct that here. The gentlemen was primarily concerned with network performance and optimising traffic.
On the other hand, the UpdatePanel does a lot to improve matters over a page postback so you get a big benefit just from wrapping key elements to be updated in an UpdatePanel. eg, here’s some data I just collected using Fiddler.
|Viewstate Enabled||Sent||5,461||Received||6,413 (-69%)|
|Viewstate Disabled||Sent||886||Received||1,835 (-88%)|
This data was collected using a DataList page from my demo site where I bind a DataList to some XML data. In the AJAX Callback version I dynamically render UpdatePanels for each of the “Price” fields in the ItemTemplate (the DataList is rendering some stock info such as high / low / current price etc)
So you get a significant gain by just introducing ASP.NET AJAX and the UpdatePanel and if you need to you can take this even further by tapping into lower-level features of ASP.NET AJAX such as web services support or the network stack.