2010-05-28 6 views
1

J'ai une application Web dans asp.net. Où je gère la session pour chaque utilisateur. Et chaque fois que je me déconnecte dans environ 2 min. J'ai essayé d'augmenter cette fois à travers le fichier de configuration Web jusqu'à 60 min mais ça ne fonctionne pas Pour moi et je reçois le même problème.Session Déconnexion toutes les deux minutes

J'ai créé un fichier de classe Pour la maintenance de la session. J'utilise ce code.

public static void createSession(System.Web.SessionState.HttpSessionState session) 
    { 
     Session = session; 

    } 

Ceci est mon code de classe.

Et j'appelle cette fonction dans le chargement de page de connexion comme ceci.

BusinessClasses.SessionHandler.createSession(Page.Session); 

Ensuite, après avoir vérifié chaque page.

Mais ce code ne fonctionne pas pour moi. Veuillez me suggérer une solution correcte pour ce problème.

Répondre

1

Cette fonction est le vôtre ne fait rien, simplement assigner une variable à lui-même. Quoi qu'il en soit, comme ils vous l'ont dit, vous devez supprimer cette fonction et utiliser la gestion de session asp. Net intégrée.

Essayez de changer le web.config à quelque chose comme:

<sessionState timeout="99999"> 
    </sessionState> 

Il devrait fonctionner.

4

Difficile de dire à partir de ce que vous avez posté, mais que faites-vous de maintenir les sessions dans votre couche de gestion lorsque ASP.NET le fait pour vous dans la couche Web à laquelle il appartient?

1

Essayez de supprimer createsesion() et accéder à la session

HttpContext.Current.Session 
1

La session peut être réinitialisée si le pool d'applications exécutant l'application est terminé. Assurez-vous qu'il n'y a aucun événement dans le journal des événements du serveur Web indiquant que le pool a été arrêté et qu'il a dû être redémarré.

0

Il existe également la valeur Session.Timeout qui peut être définie.

Questions connexes