J'ai une application qui puise dans BeginRequest
et EndRequest
pour mettre en place et le démontage des sessions NHibernate comme ceci:Comment «Exiger SSL» affecte-t-il le cycle de vie de l'application ASP.NET MVC?
BeginRequest += delegate
{
CurrentSessionContext.Bind(SessionFactory.OpenSession());
};
EndRequest += delegate
{
var session = CurrentSessionContext.Unbind(SessionFactory);
session.Dispose();
Container.Release(session);
};
Cela fonctionne bien lorsqu'il est déployé dans IIS, jusqu'à ce que je coche la case « Exiger SSL ». Une fois que je fais cela, je reçois un NullReferenceException
au session.Dispose()
.
Je ne l'ai pas encore débogué et, oui, le correctif est trivial, mais je suis juste curieux de savoir comment "Exiger SSL" affecte le cycle de vie d'une demande. Une session n'est-elle pas configurée sur le serveur dans ces cas? : Pour clarifier, je fais référence à l'option "Exiger SSL" dans la configuration IIS pour l'application, pas à l'attribut RequireHttps
pour les contrôleurs.
Cherchez-vous initialement à l'application en utilisant Http qui vous dit alors d'utiliser Https? Ou ... Vous naviguez directement à l'application en utilisant Https? – Jason
Je me connecte avec Http. Je m'attendais à IIS pour répondre immédiatement avec une redirection sans invoquer aucun de mon code. – Ragesh