我需要访问 httpmodule 中的会话。当我的页面是 aspx 页面时它可以正常工作,但是当请求 url 为 .html 时 context.session 为 null 我将 .html 映射为使用 aspnet_isapi.dll
我正在尝试访问 context_PreRequestHandlerExecute 中的会话,并且我有 httpmodule 继承 IReadOnlySessionState
我需要访问 httpmodule 中的会话。当我的页面是 aspx 页面时它可以正常工作,但是当请求 url 为 .html 时 context.session 为 null 我将 .html 映射为使用 aspnet_isapi.dll
我正在尝试访问 context_PreRequestHandlerExecute 中的会话,并且我有 httpmodule 继承 IReadOnlySessionState
根据我的经验,IReadOnlySessionState 和 IRequiresSessionState 仅适用于 HttpHandlers。
有关如何实现它,请参阅以下 SO 链接:
它不适用于 HTML 扩展,因为 aspnet_isapi.dll 不处理扩展,而是处理 .aspx 页面。
您应该使用另一个扩展而不是使用 HTML,并且应该在 IIS 应用程序配置(网站属性 -> 主目录选项卡 -> 配置按钮 -> 映射选项卡)中注册新的扩展。以 .aspx 为例,添加您自己的扩展名。