2009-07-01 5 views
7

J'ai une application ASP.NET MVC utilisant NHibernate et l'application s'exécute correctement lorsqu'elle est exécutée sur le serveur web virtuel VS2008, mais quand j'ai essayé d'exécuter le site via mon serveur IIS local, je reçois cette erreur NHibernate : Aucune session liée au contexte actuel. Je ne sais pas ce qui est arrivé. Est-ce que je manque quelque chose? J'ai juste mon site Web IIS par défaut pointant vers le répertoire web de l'application où il exécute la page Default.aspx. Des idées? MerciSession NHibernate avec IIS 7

Répondre

13

Gérez-vous votre contexte avec un HttpHandler ou un HttpModule? IIS7 requiert un groupe de configuration différent dans le fichier web.config pour ceux-ci.

<system.webServer> 
<modules></modules> 
<handlers></handlers> 
</system.webServer> 

Ceci devrait sortir du noeud <system.web />.

Vous avez probablement déjà une section <httpHandlers /> et <httpModules />, celles-ci fonctionnent avec IIS6, mais pas avec IIS7 sauf si vous utilisez le mode hérité.

Il est également possible que si vous terminez votre session lorsque l'événement EndRequest est déclenché, il est déclenché par une requête pour une image ou une autre ressource statique dont la requête se terminera avant l'appel à votre méthode d'action .

+0

Merci beaucoup! Cela a résolu mon problème exactement. Merci pour l'info. Ha, je viens de remarquer qu'il y a un commentaire dans le fichier web.config à ce sujet. Je suppose que j'aurais dû regarder plus dur. – CalebHC