J'utilise une pile MVC4, C#, Castle Windsor, fluentnhibernate pour mon application web, ce qui fonctionne généralement très bien.Fermeture inattendue de la session NHibernate
Son seul de temps en temps que je reçois une erreur liée à NHibernate quelque chose le long des lignes de:
tentative non valide d'appeler Lire lorsque le lecteur est fermé.
ou
connexion interne erreur fatale.
Cela provoque généralement sa tête laide lorsque je fais plusieurs appels, dans une succession très proche.
Actuellement, je le réplique en effectuant plusieurs ajax gets, à partir de JQuery.
Ce que je soupçonne être le problème, c'est avec ma gestion de session NHibernate.
La seule chose que je peux penser est que les appels sont une personne qui utilise le même session, la première complète et ferme, puis l'appel suivant ne parvient pas à remplir.
Cela ne devrait pas être possible en raison de la façon dont mes sessions sont traitées comme ceci:
Kernel.Register(
Component.For<ISessionFactory>()
.UsingFactoryMethod(_ => config.BuildSessionFactory()),
Component.For<ISession>()
.UsingFactoryMethod(k => k.Resolve<ISessionFactory>().OpenSession())
.LifestylePerWebRequest());
devrait être une séance par demande non?
Comment sinon, ou où d'autre puis-je rechercher le problème? Je suis assez coincé.