2009-07-01 13 views
7

Ich habe eine ASP.NET MVC-Anwendung mit NHibernate und die Anwendung läuft gut, wenn es über VS2008 virtuellen Webserver ausgeführt wird, aber wenn ich versuchte, die Website über meinen lokalen IIS-Server auszuführen, bekomme ich diesen NHibernate Fehler : Keine Sitzung an den aktuellen Kontext gebunden. Ich weiß nicht, was passiert ist. Fehle ich etwas? Ich habe nur meine Standard-Website auf das Web-Verzeichnis der Anwendung zeigen, wo es die Default.aspx-Seite ausgeführt wird. Irgendwelche Ideen? DankeNHibernate Sitzung mit IIS 7

Antwort

13

Verwalten Sie Ihren Kontext mit einem HttpHandler oder HttpModule? Für diese benötigt IIS7 eine andere Konfigurationsgruppe in der Datei web.config.

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

Dies sollte außerhalb des <system.web /> Knotens gehen.

Sie haben wahrscheinlich bereits einen Abschnitt <httpHandlers /> und <httpModules />, diese arbeiten mit IIS6, aber nicht IIS7, wenn Sie im Legacy-Modus ausgeführt werden.

Es ist auch möglich, dass beim Beenden der Sitzung beim Auslösen des EndRequest-Ereignisses diese durch eine Anforderung für ein Image oder eine andere statische Ressource ausgelöst wird, deren Anforderung vor dem Aufruf der Aktionsmethode endet .

+0

Vielen Dank! Das hat mein Problem genau gelöst. Danke für die Information. Ha, ich habe gerade bemerkt, dass es einen Kommentar in der Datei web.config gibt. Ich denke, ich hätte härter schauen sollen – CalebHC