Slow Ajax postback - too much data?

This is complicated...

I have a repeater and in each item I have a table that contains an ImageButton.
When the ImageButton is clicked, I am using Ajax to populate another table within the appropriate repeateritem so that I can prompt the user for more information. This table-to-be-populated sits inside an UpdatePanel.

Here's the code for the updatepanel:

        <asp:UpdatePanel ID="upd1" runat="server" UpdateMode="Conditional">
        <asp:AsyncPostbackTrigger ControlID="imgBespoke" EventName="Click" />
            <asp:Table ID="rtbDetails" runat="server" CssClass="subtable"></asp:Table>

Clicking the imagebutton sets a hiddenfield in the relevant repeateritem to "y" and then causes a postback, and it's actually in Page_Load that I then loop through all repeateritems, looking for ones where the hiddenfield is set to "y". If so, I find the table-to-be-populated (rtbDetails) and then create and add the new cells, rows and fields (all 55 of them).
I do this in Page_Load because I need to maintain the ViewState of my dynamically created fields as I need to know what the user puts into them - by putting in Page_Load they are re-created each postback in the same way.

Believe it or not, it works! The table is populated with the dynamic fields, I can retrieve the values on postback and all is splendid. Until however I moved it to our on-line development server, and now there's a 10 seconds delay between clicking the ImageButton and Ajax doing its bit once there's more than about 80 rows in the repeater. As this only happens on the remote server, I presume the delay is a download of Ajax info that is then used to update the page.

Why is it sending so much? I thought it would only send the necessary code to update the relevant UpdatePanel?

Is there something I'm missing? Can I meaningfully track what is being sent back from the server without digging into packet sniffers etc, and more importantly, can I restrict it?

Incidentally, the reason I'm trying to do this is that if I pre-render all of the 55 fields per row and hide them, the whole page expectedly becomes slow to respond when there are many rows.

Any help very much appreciated.

ASP.NET 2, Win 2003.
Both IE 7 and Firefox
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Fiddler ( is an excellent tool for debugging Ajax applications. Once installed you can run it from the tools menu in IE and it will show you how much data is being transferred and the contents.

I have a suspicion that it could be viewstate causing the problem: for each updatepanel postback the viewstate is passed back and forth between server and client, if you have a lot of controls on there with viewstate enabled and a lot of rows it could add up to a large payload.

Anyway, give fiddler a try and see what that tells you.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
pskempAuthor Commented:
Thanks NazoUK - I think you're right. I found a great article by Jeff Prosise ( which very nicely explains why an UpdatePanel in my situation is a bad idea. Even when I try and strip out as much viewstate as possible, there's still a lot left and I can't get it nearly quick enough.

I've decided to do it all in javascript instead. Will also look into Fiddler.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
.NET Programming

From novice to tech pro — start learning today.