sha*_*oth 7 .net c# asp.net iis
我需要我的自定义数据以某种方式连接到HttpRequest我的IIS自定义模块正在处理-从而使IIS管线的早期阶段运行该代码将一个对象和代码,在后期运行可以检索对象,并使用它,并没有其他的功能通过添加该对象来更改IIS管道处理.
数据只需要在一个HTTP请求中保留 - 我不需要在请求之间存储它.我需要它自动为每个新请求"重置" - 这样当新请求到来时它不包含我的代码附加到前一个请求的对象.
貌似HttpContext.Items是要走的路,虽然MSDN对其目的的描述不是很清楚.
是用HttpContext.Current.Items这种方式来解决我的问题?
这应该有效 - 我之前在一个项目中做过这个。
我有一个类,它具有这样的静态属性 -
public class AppManager
{
public static RequestObject RequestObject
{
get
{
if (HttpContext.Current.Items["RequestObject"] == null)
{
HttpContext.Current.Items["RequestObject"] = new RequestObject();
}
return (RequestObject)HttpContext.Current.Items["RequestObject"];
}
set { HttpContext.Current.Items["RequestObject"] = value; }
}
}
Run Code Online (Sandbox Code Playgroud)
然后 RequestObject 包含我所有的自定义数据,所以在我的应用程序中我可以做
AppManager.RequestObject.CustomProperty
Run Code Online (Sandbox Code Playgroud)
到目前为止,我还没有遇到 HttpContext.Items 工作方式的任何问题。
| 归档时间: |
|
| 查看次数: |
1606 次 |
| 最近记录: |