你好我访问HttpContext.Current.Application有问题从global.asax每次我尝试访问它时它似乎是null。 我怎么能这样呢?
HttpContext.Current.Application.Lock();
HttpContext.Current.Application["Actions"] = "hello";
HttpContext.Current.Application.UnLock();
由于
答案 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的引用。