PRB: Session Data Is Lost When You Use ASP.NET InProc Session State Mode (324772)



The information in this article applies to:

  • Microsoft ASP.NET (included with the .NET Framework 1.1)
  • Microsoft ASP.NET (included with the .NET Framework) 1.0

This article was previously published under Q324772

SYMPTOMS

Session data for ASP.NET Web applications appears to be lost at random intervals for the InProc session state mode.

CAUSE

Session state data is lost if the AppDomain or the Aspnet_wp.exe process (or the W3wp.exe process, for applications that run on Microsoft Internet Information Services [IIS] 6.0) is recycled. Generally, the AppDomain is restarted based on several factors:
  • Various attributes (for example, the memoryLimit attribute) have particular settings in the <processModel> section of the configuration file.
  • The Global.asax or the Web.config file was modified.
  • The Bin directory of the Web application was modified.
  • Virus scanning software touched some .config files.For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

    316148 PRB: Session Variables Are Lost Intermittently in ASP.NET Applications

InProc session mode indicates that session state is stored locally. This means that with InProc session state mode is actually stored as life objects in the AppDomain of the Web application. This is why the session state is lost when Aspnet_wp.exe (or W3wp.exe, for applications that run on Microsoft Internet Information Services [IIS] 6.0) or the AppDomain restarts.

RESOLUTION

To work around this problem, you can use StateServer or SqlServer session state mode. ASP.NET provides these other approaches for storing session state data. In the StateServer and SqlServer modes, your session state is not stored in the AppDomain of the Web application.

Note It is important to understand the behavior and the issues that are associated with each session state mode when you decide which mode is appropriate for your requirements. For more information, see the "References" section of this article.

STATUS

This behavior is by design.

REFERENCES

For more information about ASP.NET session state management and other related topics, visit the following Microsoft Web site: For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

307598 INFO: ASP.NET State Management Overview

For more general information about ASP.NET, see the following Microsoft Developer Network (MSDN) newsgroup:

Modification Type:MinorLast Reviewed:7/11/2003
Keywords:kbprb kbState KB324772 kbAudDeveloper