12.3. Reducing Load Times and Improving Performance

As Web pages become busier, performance starts to drag. If a page seems slow on your workstation, expect it to get worse when posted to the Web server. While you can't always control the speed of the Internet connection or the Web server's horsepower, you can certainly do your part to cut page load times and improve the overall throughput. This section looks at two techniques: reducing ViewState and employing caching.

12.3.1. Turning off ViewState

ASP.NET server controls make programming easier, but they make Web pages fatter. If you're not careful, ASP.NET can bloat a relatively small page by overdoing a hidden feature called ViewState. Look at the output of any ASP.NET page and you find ViewState. It resembles the following (much abbreviated) markup when you look at the HTML in the browser (ViewSource):

<input type="hidden" name="__VIEWSTATE"
id="__VIEWSTATE" value="/wEPDwUL...80sXAJunhsp3aKX6m/d" />

ViewState is how ASP.NET tracks the current settings for all its controls. You see an ordinary, hidden <input> tag with a string of nonsense characters as the value attribute. That value is the Web server's personal aide-memoire as to what the page was like when it sent the HTML to the browser.

That blob of overhead travels back and forth (it roundtrips in geekspeak) for no good reason. If there's nothing in the server-side code ...

Get ASP.NET 3.5 For Dummies® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.