我最近遇到了一个奇怪的问题。在我的MVC应用程序中,在" Application_Start"我初始化了几个钩子,其中一个钩子创建了一个静态的对象列表,我稍后在整个应用程序中应用/使用它们。
除非我们需要,否则永远不会终止或重置应用程序,但有时我的对象列表将在一段时间后没有存储任何内容;因此它以某种方式被重置/清除。
这个问题有解决方案吗?有没有解释为什么会发生这种情况?
Hooks Class:
public class Hooks
{
public static List<MyObject> myList = new List<MyObject>();
}
我只是通过应用程序使用此列表。
修改 我做了一些更多的研究,看起来IIS在重置池时清除所有静态变量。有没有人知道一个可能的解决方案,即使IIS清除这些变量后仍保持此对象的状态?