Les données de session sont perdues lorsque vous utilisez ASP.NET mode d’état de session InProc
Cet article vous aide à résoudre le problème de perte de données de session lorsque vous utilisez ASP.NET mode d’état de session InProc.
Version d’origine du produit : ASP.NET
Numéro de la base de connaissances d’origine : 324772
Symptômes
Les données de session pour les applications web ASP.NET semblent être perdues à intervalles aléatoires pour le mode d’état de session InProc.
Cause
Les données d’état de session sont perdues si la AppDomain
classe ou le processus Aspnet_wp.exe (ou le processus W3wp.exe, pour les applications qui s’exécutent sur IIS 7.0 ou une version ultérieure) est recyclé. En règle générale, le AppDomain
est redémarré en fonction de plusieurs facteurs :
- Différents attributs (par exemple, l’attribut
memoryLimit
) ont des paramètres particuliers dans la<processModel>
section du fichier de configuration. - Le fichier Global.asax ou Web.config a été modifié.
- Le
Bin
répertoire de l’application web a été modifié. - Le logiciel d’analyse antivirus a touché certains fichiers.config .
Le mode de session InProc indique que l’état de session est stocké localement. Cela signifie que le mode d’état de session InProc est stocké en tant qu’objets de vie dans l’application AppDomain
web. C’est pourquoi l’état de session est perdu quand Aspnet_wp.exe (ou W3wp.exe, pour les applications qui s’exécutent sur IIS) ou les AppDomain
redémarrages.
Résolution
Pour contourner ce problème, vous pouvez utiliser le mode d’état de session StateServer ou SqlServer. ASP.NET fournit ces autres approches pour le stockage des données d’état de session. Dans les modes StateServer et SqlServer, l’état de votre session n’est pas stocké dans le AppDomain
de l’application web.
Remarque
Il est important de comprendre le comportement et les problèmes associés à chaque mode d’état de session lorsque vous décidez quel mode est adapté à vos besoins.
Statut
Ce comportement est inhérent au produit.
References
Pour plus d’informations sur ASP.NET gestion de l’état de session et d’autres informations connexes, consultez État de session.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour