从页面外部访问应用程序状态

时间:2010-09-02 17:37:02

标签: c# asp.net caching application-state

我正在尝试从Web应用程序中的实用程序类访问Application State,但我不确定最好的方法。我寻找一个静态成员,但没有任何用处(我在想HttpContext.Current的某个地方)。

我到目前为止找到的最佳解决方案是在实用程序类中有一个成员,它将在Global.asax.cs的Application_Start事件中初始化(我可以从this.Application那里得到它)但是会有任何风险发生在该引用上的“某事”(我不关心正在重启的应用程序,因为我只是在寻找缓存功能)?

4 个答案:

答案 0 :(得分:9)

我想我明白了!

HttpContext.Current.Application

答案 1 :(得分:1)

无法通过设计从HTTTPContext外部访问应用程序状态。使用Application_Start是初始化“全局”值的首选方法。您也可以将Cache类用于相同目的。 Cache提供成员到期功能,这些功能对于因文件或数据库值更改等事件而发生更改的数据非常有用。

答案 2 :(得分:0)

尝试

System.Web.HttpRuntime

答案 3 :(得分:0)

您只需创建一个静态类成员:

public class MyGlobalCache
{
    public static string SomeValue{get;set;}
}

这将存储在应用程序级别,这意味着您将获得与Application状态相同的功能。静态成员将可用于所有层(网页和非网页)。