[已解决问题] 在Global.asax文件中如何得到当前请求的页面(page)对象?
提问时间: 2008-07-24 14:56
悬赏分:50 浏览:158 次
在Global.asax文件中如何得到当前请求的页面(page)对象,
最佳答案
使用HttpContext.Current.CurrentHandler as Page 可以获得。 当然正如deerchao 所言,如果当前请求的Handler不是一个Page;则上面的表达式,会返回null;你可以在使用前做一个是否为null的判断。
2008/7/24 17:29:06 回答者:玉开


提问者对于答案的评价:问题已初步解决,用this.Request.FilePath得到请求页面的名称。在做判断。
其它回答(2)
没有办法. 因为Asp.net可以支持不同的处理模型(IHttpHandler),可能某些模型里根本就没有"Page"这个概念. 建议你把所有的页面类都继承自一个自定义类MyPage,然后重写MyPage的某些事件处理函数(比如OnInit)里做需要的处理过程.
1个月前   回答者:deerchao - 大侠五级
不知道你为什么要在global中取得page 你在global中的什么事件里面处理? 如果是在httpHandler之前触发的事件那么page对象还没有存在,之后的事件的话page是否销毁..?没试验过 当然可以吧page放到上下文里 HttpContext.Current.Items["page"] = page; 在global里面再取出来用用HttpContext.Current.Items["page"] as Page 不过我是觉得没什么用了... 不知道我理解对了没有,就这么着了
1个月前   回答者:無尽海 - 菜鸟二级
评论
1个月前   zjianjun/Andy :
问题已初步解决,用this.Request.FilePath得到请求页面的名称。在做判断。
1个月前   zjianjun/Andy :
在此还是感谢各位,把分给玉开了。
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题

> 问题排行榜

相关链接