Session Object
HttpSessionState Class Methods Properties Extension Methods
SessionStateModule Class Constructors Methods Events Remarks Source/Reference
Session Object
The ASP Session object is supported by ASP.NET through HttpSessionState Class and and SessionStateModule Class. Session object of ASP.NET is related to the manipulation of information about the session of a client on the server.
ASP.NET provides session-state management through an instance of
HttpSessionState Class to enable storing information associated with a unique browser session across multiple requests. A collection of values can be stored with reference by a key name or by numerical index. Access to session values and functionality is available using the HttpSessionState class, which is accessible through the Session property of the current HttpContext, or the Session property of the Page.
SessionStateModule Class provides session-state services for an application. This class cannot be inherited. SessionStateModule is ASP.NET's default session-state handler. It writes session data to and retrieves it from the session-state store and raises the Session_OnStart and Session_OnEnd events.
HttpSessionState Class
Methods
Method
Description
Abandon()
Cancels the current session.
Add(String, Object)
Adds a new item to the session-state collection.
Clear()
Removes all keys and values from the session-state collection.
Contents.Remove
Remove
or delete an item from the Contents collection of Session object.
Contents.RemoveAll
Remove or delete all items from the Contents collection of
Session object.
CopyTo(Array, Int32)
Copies the collection of session-state values to a one-dimensional array, starting at the specified index in the array.
Equals(Object)
Determines whether the specified object is equal to the current object. (Inherited from Object)
GetEnumerator()
Returns an enumerator that can be used to read all the session-state variable names in the current session.
GetHashCode()
Serves as the default hash function. (Inherited from Object)
GetType()
Gets the Type of the current instance. (Inherited from Object)
MemberwiseClone()
Creates a shallow copy of the current Object. (Inherited from Object)
Remove(String)
Deletes an item from the session-state collection.
RemoveAll()
Removes all keys and values from the session-state collection.
RemoveAt(Int32)
Deletes an item at a specified index from the session-state collection.
ToString()
Returns a string that represents the current object. (Inherited from Object)
Properties
Property
Description
CodePage
Gets or sets the character-set identifier for the current session.
Contents (Collection)
Gets a reference to the current session-state object.
CookieMode
Gets a value that indicates whether the application is configured for cookieless sessions.
Count
Gets the number of items in the session-state collection.
IsCookieless
Gets a value indicating whether the session ID is embedded in the URL or stored in an HTTP cookie.
IsNewSession
Gets a value indicating whether the session was created with the current request.
IsReadOnly
Gets a value indicating whether the session is read-only.
IsSynchronized
Gets a value indicating whether access to the collection of session-state values is synchronized (thread safe).
Item[Int32]
Gets or sets a session value by numerical index.
Item[String]
Gets or sets a session value by name.
Keys
Gets a collection of the keys for all values stored in the session-state collection.
LCID
Gets or sets the locale identifier (LCID) of the current session.
Mode
Gets the current session-state mode.
SessionID
Gets the unique identifier for the session.
StaticObjects (Collection)
Gets a collection of objects declared by
<object runat="Server" scope="Session"/>
tags within the ASP.NET application file Global.asax.
SyncRoot
Gets an object that can be used to synchronize access to the collection of session-state values.
Timeout
Gets or sets the amount of time, in minutes, allowed between requests before the session-state provider terminates the session.
Extension Methods
Extension Method
Description
SessionStateModule Class
Constructors
Constructor
Description
SessionStateModule()
Initializes a new instance of the SessionStateModule class.
Methods
Method
Description
Dispose()
Executes final cleanup code before the SessionStateModule object is released from memory.
Equals(Object)
Determines whether the specified object is equal to the current object. (Inherited from Object)
GetHashCode()
Serves as the default hash function. (Inherited from Object)
GetType()
Gets the Type of the current instance. (Inherited from Object)
Init(HttpApplication)
Calls initialization code when a SessionStateModule object is created.
MemberwiseClone()
Creates a shallow copy of the current Object. (Inherited from Object)
ToString()
Returns a string that represents the current object. (Inherited from Object)
Events
Event
Description
End
Occurs when a session ends.
Start
The event that occurs when a session is created.
Session_OnEnd
Event occurs on the end of a Session when the Session is
either abandoned or times out.
Session_OnStart
Event occurs on the start of a Session when a new Session is created by the
server.
Remarks
All items in the collections of
Session object is available within the scope
of entire session for a client in the application.
A Session object with unique Session Identifier is created by the web server
automatically when a web page from the application is requested by a
client without a Session Identifier or does not already have a session.
Therefore a client jumps between pages in the application will have the same
Session object and session identifier. The Session object will be destroyed by
the server once the session is abandoned or is destroyed.
An object instance of a component can be assigned to an item of a Contents
Collection through the Server.CreateObject method with the Set keyword.
And an embedded object can also be assigned to an item of a StaticObjects
Collection through the <OBJECT> tag
However, only threading model of objects marked as BOTH can be stored in the
Session object, because the session is not locked to a single thread
But all built-in objects cannot be assigned to neither a Content Collection nor
a StaticObjects Collection.
Besides, an array can also be assigned to an item of a Contents Collection in
the form of a collection, but the elements of the stored array in the Contents
Collection cannot be manipulated as an ordinary array directly because the array
is stored as a collection.
The methods and properties of ASP
Session object can be grouped into