Disclaimer: This presentation is prepared by trainees of
baabtra as a part of mentoring program. This is not official
document of baabtra –Mentoring Partner
Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt .
Why is state necessary?
• The vast majority of Internet applications
operate using the HTTP protocol.
• HTTP is state less.
– This means that each request for a page is treated
as a new request by the server.
Introduction to State Management
• Remember that ASP.NET is stateless
– The Web server does not keep track of past client
• Different technologies handle the issue of
statement management differently
– ASP.NET is quite unique in this regard
Types of State Management
• ASP.NET offers two categories of state
– Pure client-side statement management
– Server-side state management
Client State Management
ASP.NET preserves the state of the page’s controls between
post backs by packaging and encoding it within a hidden
This view state feature can also be used programmatically to
preserve additional information between post backs for the
ViewState["RequestCount"] = count;
int count = (int)ViewState["RequestCount"];
Advantages & Disadvantage of
• It consumes no server memory.
• It is more hidden than Query String and Hidden
• Its possible to encrypt View State information.
Disadvantage :– It increases the size of the page.
• The ControlState property allows you to
persist information as like the view state.
– The ControlState data is stored in hidden
Control State Application
• If we create a custom control that requires
view state to work properly.
• We should use control state to ensure other
developers don’t break your control by
disabling view state.
• Use the HiddenField control to store
• The data is stored in the Value property
• It’s simple and requires no server resources
• A query string can be used to submit data
back to the same page or to another page
through the URL.
Eg :string url = "productPage.aspx?id=" + id;
int id = Convert.ToInt32(Request["id“]);
Disadvantages of Query String
• Not secured (its visible completely in the
address bar to the users)
• The maximum allowable length of a query
string varies from browser to browser(IE only
allows only 2k of url)
• Cookies are a client-side approach for
persisting state information.
• These pairs accompany both server requests
and responses within the HTTP header
• Eg:HttpCookie cookie = new HttpCookie("Name",txtName.Text);
// Set expiry date to 1 day, 12 hours from now
cookie.Expires = DateTime.Now + new TimeSpan(1, 12, 0, 0);
• While simple, cookies have disadvantages
• A cookie can only be 4096 bytes in size
• Most browsers restrict the total number of
cookies per site
• Users can refuse to accept cookies so don’t try
to use them to store critical information
Server State Management
• Application state
• Session state
• Session state is a server-based state
mechanism that allows you to store data in a
• It is scoped to the current browser session.
• That is, each user or browser session has a
different session state.
• Application state is a server-stored state
mechanism that allows you to store global
data in a dictionary-style collection that is
accessible from all pages in the Web
• Thus, application state is ideal for storing
relatively small, frequently used sets of data
that do not change from user-to-user or
request to request.
• Eg :Application["SiteRequestCount"] = 0;
int count = (int)Application["SiteRequestCount";
If this presentation helped you, please visit our
page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
Emarald Mall (Big Bazar Building)
Mavoor Road, Kozhikode,
Ph: + 91 – 495 40 25 550
Start up Village
NC Complex, Near Bus Stand
Ph: + 91 – 495 40 25 550