我有一个Asp.Net应用程序。出于性能原因,一些数据存储在应用程序状态中,如Application [“MyData”] = myData; 我可以对其进行配置以使数据定期清除吗?
感谢。
答案 0 :(得分:1)
它们就像变量一样,因此命名为Application Variables。您可以将它们重新分配给新值。
Application["MyData"] = myData;
///Do something.
...
..
.
Application["MyData"] = myNewData;
编辑:
应用程序变量专门用于持续应用程序的生命周期,并且在应用程序关闭之前不会过期。您可以做的是为每个用户分配一个访问您的应用程序的会话变量,并在需要时使其过期。
答案 1 :(得分:0)
是的,你可以两种方式明确地做到这一点
应用程序状态位于工作进程应用程序池的IIS中。这里的超时设置可以做到
否则在c#
中ApplicationPool.ProcessModel.PeriodicRestart.Time = TimeSpan.FromMinutes(5);
//or based on idle. just play around with ApplicationPool. items
ApplicationPool.ProcessModel.IdleTimeout = 600000;