Tengo una aplicación que se nutre de BeginRequest
EndRequest
y de configurar y derribar las sesiones de NHibernate como este:¿Cómo afecta "Require SSL" al ciclo de vida de la aplicación ASP.NET MVC?
BeginRequest += delegate
{
CurrentSessionContext.Bind(SessionFactory.OpenSession());
};
EndRequest += delegate
{
var session = CurrentSessionContext.Unbind(SessionFactory);
session.Dispose();
Container.Release(session);
};
Esto funciona bien cuando se implementa en IIS, hasta que marque la casilla "Requerir SSL". Una vez que hago esto, obtengo un NullReferenceException
al session.Dispose()
.
No he depurado esto todavía y, sí, la solución es trivial, pero tengo curiosidad acerca de cómo "Requerir SSL" afecta el ciclo de vida de una solicitud. ¿Una sesión no está configurada en el servidor en estos casos?
EDITAR: Solo para aclarar, me refiero a la opción "Requerir SSL" en la configuración de IIS para la aplicación, no el atributo RequireHttps
para los controladores.
¿Está navegando inicialmente a la aplicación usando Http que le indica que use Https? O ... ¿Estás navegando directamente a la aplicación usando Https? – Jason
Me estoy conectando con Http. Esperaba que IIS respondiera de inmediato con un redireccionamiento sin invocar ninguno de mis códigos. – Ragesh