【发布时间】:2019-10-28 18:00:56
【问题描述】:
我正在寻找一种在 HttpApplication 事件之间传递数据的方法。例如,我的 HTTP 模块中有以下代码:
public void Init(HttpApplication context)
{
context.BeginRequest += DoFoo;
context.EndRequest += DoBar;
}
我想在DoFoo 方法中的BeginRequest 事件期间保存一些数据,稍后在DoBar 方法中的EndRequest 事件期间访问它。
据我所知,Session 目前尚不可用。有没有办法在事件之间存储数据,以便它是:
- 可用于当前和所有后续活动;
- 只能在当前请求的范围内访问。
更新:
是否可以使用 HTTP 模块实例变量来实现这一点?是否存在存储在这些变量中的数据在当前请求之外可以访问的风险?
【问题讨论】:
-
this 有帮助吗?
-
@wazz,谢谢你的链接。在 StackOverflow 上发布我的问题之前,我已经浏览了这个 MSDN 页面。不幸的是,它没有关于在事件之间传递数据的任何信息。
-
您正在寻找HttpContext.Item
-
@JohnWu,谢谢,这正是我想要的!