我在 ASP.NET MVC 应用程序的应用程序启动事件中为静态变量赋值。
protected void Application_Start()
{
public static list<string> versionInfo = VersionAccess.LoadVersionInfo();
}
在这个静态变量“versionInfo”中分配了从数据库中获取的一些值的列表。在整个 mvc 应用程序中使用了这个静态变量。
当我在 IIS 中托管此应用程序时,这工作正常。后来我在数据库中添加了更多值。所以静态变量值必须用一些新的额外值来重置。然后我重新启动了 IIS,新值将受到影响。但一段时间后,这将回到以前的状态,静态变量值更改为数据库更新前的旧值。
IIS 重新启动会在一段时间内有效,稍后有时我看不到新值。我第一次托管应用程序时缓存的静态变量值仍然存在。
我尝试从服务器中删除临时 asp.net mvc 文件,还回收了应用程序池,并通过命令提示符重新启动了 IIS。
在所有情况下,有时只有我能找到新的变化,然后回到以前的状态。这在 localhost 中运行良好。
谁能给我一个解决方案?
问候,卡蒂克。