---
title: "ViewState in ASP.Net"  
description: "The web is stateless protocol, so the page gets instantiated, executed, rendered and then disposed on every round trip to the server. The developer's"  
author: "Amit Singh"  
published: 2011-03-22  
updated: 2014-09-18  
canonical: https://www.mindstick.com/blog/135/viewstate-in-asp-dot-net  
category: "asp.net"  
tags: ["asp.net"]  
reading_time: 2 minutes  

---

# ViewState in ASP.Net

The web is stateless protocol, so the page gets instantiated, executed, rendered and then disposed on every round trip to the server. The [developer](https://www.mindstick.com/articles/157260/variation-between-web-designer-and-web-developer)'s code to add "statefulness" to the page by using Server-side storage for the state or posting the page to itself. When required to persist and read the data in control on web form, a developer had to read the values and store them in hidden variable (in the form), which were then used to restore the values. With the advent of .NET [framework](https://www.mindstick.com/forum/34615/software-framework-vs-library), ASP.NET [came up](https://answers.mindstick.com/qa/41115/who-came-up-with-the-10-percent-plan-what-did-this-plan-say) with [ViewState](https://www.mindstick.com/blog/326/viewstate-in-asp-dot-net) mechanism, which tracks the data values of server controls on ASP.NET webform. \

##### Where it stored?

In effect, ViewState can be viewed as "hidden variable managed by ASP.NET framework!". When ASP.NET page is executed, data values from all server controls on the page are collected and encoded as single string, which then assigned to page's hidden [attribute](https://www.mindstick.com/blog/221/attributes-reflection) "< input type=hidden >", that is part of page sent to the client.ViewState value is temporarily saved in the client's browser.

##### Can we disable it?

ViewState can be disabled for a single control, for an entire page or for an entire [web application](https://www.mindstick.com/articles/13069/progressive-web-application-pwas-all-you-need-to-know-about).

##### The syntax is:

##### · Disable ViewState for control (Datagrid in this example)

< asp:datagrid [EnableViewState](https://www.mindstick.com/interview/734/what-does-the-enableviewstate-property-signify)="false" ... / >

\
· Disable ViewState for a page, using [Page directive](https://www.mindstick.com/interview/999/explain-the-use-of-duration-attribute-of-outputcache-page-directive)

< %@ Page EnableViewState="False" ... % >

· Disable ViewState for application through entry in [web.config](https://www.mindstick.com/forum/183/web-config-file)

< Pages EnableViewState="false" ... / >

---

Original Source: https://www.mindstick.com/blog/135/viewstate-in-asp-dot-net

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
