什么是ASP.NET中的默认会话超时?

什么是ASP.NET中的默认会话超时值?

根据MSDN,这是20分钟

来自MSDN:

可选的TimeSpan属性。

指定会话在放弃之前可以闲置的分钟数。 对于进程内和服务器模式,超时属性不能设置为大于525,601分钟(1年)的值。 会话超时configuration设置仅适用于ASP.NET页面。 更改会话超时值不影响ASP页面的会话超时。 同样,更改ASP页面的会话超时也不会影响ASP.NET页面的会话超时。 默认值是20分钟。

它取决于configuration程序变化
因此,检查当前值最可靠的方法是在运行时通过代码。

请参阅HttpSessionState.Timeout属性; 默认值是20分钟。

你可以通过HttpContext在ASP.NET中访问这个propery:

this.HttpContext.Session.Timeout // ASP.NET MVC controller Page.Session.Timeout // ASP.NET Web Forms code-behind HttpContext.Current.Session.Timeout // Elsewhere 
  1. 会话的默认有效期为20分钟
  2. Cookie的默认有效期为30分钟
  3. ViewState的最大尺寸是页面大小的25%

默认值是20分钟。 http://msdn.microsoft.com/en-us/library/h6bb9cz9(v=vs.80).aspx

 <sessionState mode="[Off|InProc|StateServer|SQLServer|Custom]" timeout="number of minutes" cookieName="session identifier cookie name" cookieless= "[true|false|AutoDetect|UseCookies|UseUri|UseDeviceProfile]" regenerateExpiredSessionId="[True|False]" sqlConnectionString="sql connection string" sqlCommandTimeout="number of seconds" allowCustomSqlDatabase="[True|False]" useHostingIdentity="[True|False]" stateConnectionString="tcpip=server:port" stateNetworkTimeout="number of seconds" customProvider="custom provider name"> <providers>...</providers> </sessionState> 

您可以使用sessionstate并在超时时间内configuration分钟

 <sessionState timeout="20" </sessionState>