O'Reilly logo

Programming Visual Basic .NET by Dave Grundgeiger

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Maintaining State

The process of serving web pages is inherently stateless. By default, each request to a web server is isolated from every other request that a user might make. This is a fine model for serving static web pages, but it’s not very useful for full-featured applications. To be useful, applications must keep track of state. This section describes the different options that web developers have for storing state.

The Session Object

When a user browses to a web page served by IIS, IIS considers it the start of a session for that user. A session is an abstract concept that refers to the period of time within which a particular user is interacting with a web application. Although it’s easy to determine when a session starts, it’s not so easy to know when that session ends. This is because of the inherent disconnectedness of web browsing. After any given web request is serviced, IIS doesn’t really know whether the user will issue more requests (browse to more pages). For this reason, IIS establishes a session timeout period. If no new requests are received from a user after a given amount of time, IIS considers that session to have ended.

A session corresponds to a single use of a web application by a single user. To assist the web application in maintaining state for the duration of a session, ASP.NET provides an intrinsic object called the Session object. When a session begins, ASP.NET instantiates a Session object. During processing of web requests, the application can ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required