Che cos'è il timeout di sessione predefinito in ASP.NET?


Risposte:


107

Sono 20 minuti secondo MSDN

Da MSDN:

Attributo TimeSpan facoltativo.

Specifica il numero di minuti in cui una sessione può essere inattiva prima che venga abbandonata. L'attributo timeout non può essere impostato su un valore maggiore di 525.601 minuti (1 anno) per le modalità in-process e state-server. L'impostazione di configurazione del timeout della sessione si applica solo alle pagine ASP.NET. La modifica del valore di timeout della sessione non influisce sul timeout della sessione per le pagine ASP. Allo stesso modo, la modifica del timeout della sessione per le pagine ASP non influisce sul timeout della sessione per le pagine ASP.NET. L'impostazione predefinita è 20 minuti.


48

Dipende dalla configurazione o dalla modifica programmatica .
Pertanto il modo più affidabile per controllare il valore corrente è in fase di esecuzione tramite codice.

Vedere la proprietà HttpSessionState.Timeout ; il valore predefinito è 20 minuti.

È possibile accedere a questa proprietà in ASP.NET tramite HttpContext :

this.HttpContext.Session.Timeout // ASP.NET MVC controller
Page.Session.Timeout // ASP.NET Web Forms code-behind
HttpContext.Current.Session.Timeout // Elsewhere

sono in grado di ottenere il valore 20 durante il controllo int check = this.HttpContext.Session.Timeout;ma posso impostare il timeout della sessione con il tasto? e controlla il timeout della sessione per una chiave particolare come Session["mykey"]:?
shaijut

37
  1. Il periodo di scadenza predefinito per la sessione è di 20 minuti .
  2. Il periodo di scadenza predefinito per i cookie è di 30 minuti .
  3. La dimensione massima di ViewState è il 25% delle dimensioni della pagina

25

L'impostazione predefinita è 20 minuti. 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>

3

Il periodo di scadenza predefinito per la sessione è di 20 minuti.

È possibile aggiornare lo stato della sessione e configurare i minuti in timeout

<sessionState 
timeout="30">
</sessionState>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.