La détection d'expiration de Session sur ASP.NET MVC

J'ai construit un panier qu'utilise l'État de Session pour garder le panier des données pendant que l'utilisateur navigue sur le store.

J'ai un problème où, si je laisse la fenêtre du navigateur ouverte pendant une longue période sur l'étape 1 du panier, puis appuyez sur la touche "aller à l'étape 2", mes actions jeter une erreur car l'etape 2 action suppose que la session n'a pas expiré et que le ShopCart objet est dans l'état correct.

Je voudrais que ce scénario sera plus agréable pour mes utilisateurs, mais je pense que j'ai besoin de quelque façon détecter si la session a expiré alors que sur la prochaine demande je peux les jeter à l'Étape 1.

J'ai trouvé le code suivant, qui prétend résoudre le problème, mais il ne fonctionne pas pour moi.

La IsNewSession condition est vraie, mais la condition

if ((null != sessionCookie) && (sessionCookie.IndexOf("ASP.NET_SessionId") >= 0)) {
   //handle expired session
}

renvoie toujours false et il n'a jamais gère la session non valide. Je suis confus.

Est-ce possible dans ASP.NET (et MVC)?

InformationsquelleAutor CVertex | 2009-09-29