[ASP.NET]Problème de durée de vie de session

Fermé
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 - 29 mai 2008 à 11:39
 JohnB - 17 févr. 2014 à 12:49
Bonjour,

Je suis en train de créer un site web en ASP.NET et j'ai un problème lié à la durée de vie des sessions utilisateur. Il n'est en effet pas rare de devoir m'identifier au bout de quelques minutes, alors que j'ai tout fait pour que ça ne soit pas le cas.

J'ai essayé dans les propriétés de mon site (sous IIS) de décocher "activer l'état de session"; j'ai aussi essayé de paramétrer la propriété "timeout" de l'objet "Session", rien à faire le problème reste le même.

Est-ce que quelqu'un pourrait éclaircir ma lanterne svp?

1 réponse

Bonjour,

J'ai rencontré le même problème de perte des sessions en phase de développement.
Celles ci sont pour le plus souvent dues au fait que ces variables sont stockées au niveau du processus d'exécution du serveur web (mode de stockage InProc soit "au sein du processus IIS").
Il se trouve que avec ASP.NET, les modifications de paramètres dans le web.config ou modification d'assemblages du dossier /Bin par exemple déclanchent un redémarrage de l'application et une recompilation d'un certain nombre d'éléments.
La session étant stockée dans le processus qui redémarre, elle est effectivement perdue.
La solution la plus simple est de stocker les sessions ailleurs, plus précisément dans le service "aspnet state server" ou "Service d'état aspnet". Ce service n'est pas démarré par défaut, il faudra l'activer en ensuite paramétrer le web.config pour un autre mode : StateServer et éventuellement préciser l'adresse du service avec stateConnectionString = tcpip=127.0.0.1:42424.

Seule "contrainte" : les objets mis en sessions doivent pouvoir être transportés sur une trame TCPIP, donc être sérialisables en binaire.

Voici quelques liens :
Web.Config : https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-2.0/h6bb9cz9(v=vs.80)?redirectedfrom=MSDN
Sérialization : https://docs.microsoft.com/fr-fr/previous-versions/dotnet/articles/ms973893(v=msdn.10)?redirectedfrom=MSDN#objserializ_topic4 (section Sérialisation de base)

Bonne continuation en espérant avoir aidé.
3
jé pas compris tt ce ke tu as dis
0
ça fais un moment, mais... Merci !
0