我有一个应用程序可以像这样接入BeginRequest
并EndRequest
设置和拆除 NHibernate 会话:
BeginRequest += delegate
{
CurrentSessionContext.Bind(SessionFactory.OpenSession());
};
EndRequest += delegate
{
var session = CurrentSessionContext.Unbind(SessionFactory);
session.Dispose();
Container.Release(session);
};
这在 IIS 中部署时可以正常工作,直到我选中“需要 SSL”框。一旦我这样做,我会得到一个NullReferenceException
at session.Dispose()
。
我还没有调试过这个,是的,修复很简单,但我只是好奇“需要 SSL”如何影响请求的生命周期。在这些情况下,是否没有在服务器上设置会话?
编辑:为了澄清,我指的是应用程序的 IIS 配置中的“需要 SSL”选项,而不是RequireHttps
控制器的属性。