12 votes

Obtenir la valeur du délai d'attente de la session alors qu'elle n'est pas définie dans la configuration ?

Je mets en œuvre mon propre fournisseur de session J'aimerais savoir si la valeur par défaut de 20 minutes est définie automatiquement dans le fournisseur de session ? Cette valeur est-elle fournie qu'il y ait ou non une entrée dans le fichier de configuration ?

Si ce n'est pas le cas, mon fournisseur de session est-il censé l'obtenir d'un autre endroit ?

18voto

Je n'ai pas trouvé la valeur dans un fichier de configuration globale, mais elle est définie quelque part.

En utilisant le code suivant, vous pouvez obtenir la valeur du délai d'attente de la session, qu'elle soit définie ou non dans votre web.config local.

Configuration conf = WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath);
SessionStateSection section = (SessionStateSection) conf.GetSection("system.web/sessionState");
int timeout = (int) section.Timeout.TotalMinutes;

12voto

Stephan Ahlf Points 411

Essayez d'utiliser :

System.Int64 timeout = System.Web.HttpContext.Current.Session.Timeout; // The time-out period, in minutes

1voto

antar Points 405

Dans Global.asax, vous pouvez définir

Session.TimeOut

dans Session_Start ou à un autre endroit du code.

0voto

Jeff Turner Points 961

http://msdn.microsoft.com/en-us/library/aa478952.aspx

D'après l'article que j'ai cité plus haut, si la valeur du délai d'attente n'est définie nulle part, une valeur par défaut de 20 minutes sera utilisée. Cela semble être le cas pour les fournisseurs personnalisés et intégrés.

0voto

G_P Points 1712

Vous pouvez simplement utiliser Session.Timeout pour obtenir la valeur

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X