The ASP.NET framework WebForms model aims to simplify web development by blurring the line between the client and the server. In short, WebForms allow the .NET developer to set aside the fact that the browser and the web server are temporally, physically, and logically disconnected. The page developer can create server-side event handlers that execute in response to a client-side action (like clicking a button). He can make server-side changes to properties of Web controls on the page and need not worry about reinstating those properties on the subsequent postback. One of the essential ingredients for performing this magic is view state.
View state represents the state of an ASP.NET web page that is to be remembered across postbacks. On each page visit, an ASP.NET web
page automatically constructs this state information and stores it to a hidden form field on the page named
__VIEWSTATE. When the form
is submitted, the browser returns this hidden form field to the server; the ASP.NET page then parses the view state information to
reconstruct the state from the previous page visit. This entire process happens automatically behind the scenes and is, in part, what
makes ASP.NET web development so accessible.
Unfortunately, there is no such thing as a free lunch, and view state is no exception. The presence of view state adds to the size of
the page, thereby resulting in larger page sizes that can negatively effect the user experience. What’s more, certain controls, such as
DropDownLists and GridViews, can significantly add to the heft of a page’s view state. It’s a good practice for WebForm developers to
keep an eye on their pages’ view state sizes to ensure an optimal user experience. This article shows two ways to programmatically determine a page’s view state size and to provide a warning should the view state size exceed some specified threshold. To read the entire article, Determine Your ASP.NET Framework Page’s View State Size, click here.