您的位置:首页 > 其它

在类库文件里如何获取context对象

2010-11-18 17:55 190 查看
1.一般情况下,我们利用HttpContext.Current对象可以获取到需要的对象,例如:Request,Response,Server等

HttpContext context=HttpContext.Current;这样即可获取到context对象

Page current = HttpContext.Current.CurrentHandler as Page;这样就能获取到page对象

Request,Response,Server对象都可通过context对象获取。

来是因为Page继承了IHttpHandler接口,同理:包括ashx等之类实现了IHttpHandler接口的都可以用这种方式取到对应的对象。

2.异步请求时,要在异步之前获取到context对象
因为HttpContext.Current是基于System.Runtime.Remoting.Messaging.CallContext这个类,子线程和异步线程都无法访问到主线程在CallContext中保存的数据。

所以要在异步之前获取到context对象,我是用一个静态变量把HttpContext.Current存起来的,这样在异步的程序里都可以访问到context对象。也不会发生异常。

这是我遇到这个问题时解决的方法,如果有好的意见一起学习!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: