如何访问HttpContext.Current.Application

时间:2010-06-07 10:55:22

标签: c# asp.net

你好我访问HttpContext.Current.Application有问题从global.asax每次我尝试访问它时它似乎是null。 我怎么能这样呢?

HttpContext.Current.Application.Lock();
HttpContext.Current.Application["Actions"] = "hello";
HttpContext.Current.Application.UnLock();

由于

3 个答案:

答案 0 :(得分:3)

在Global.asax中,你不是一个实际的请求,因此没有当前请求,也没有上下文。但是,Global类是HttpApplication的子类,所以只需使用'this',如:

this["Actions"]

答案 1 :(得分:0)

来自MSDN

要获取当前HTTP请求的HttpApplication对象,请使用ApplicationInstance。 (ASP.NET使用ApplicationInstance而不是Application作为属性名称来引用当前的HttpApplication实例,以避免ASP.NET和经典ASP之间的混淆。在经典ASP中,Application引用全局应用程序状态字典。)

答案 2 :(得分:0)

您需要打开web.config文件中对Application实例对象的访问权限,如下所示:

<system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
</system.serviceModel>

请务必添加对System.Web的引用。