应用程序状态在mvc中

时间:2010-10-14 20:45:50

标签: asp.net-mvc

我正在使用Application [“”]来存储一些非常小的列表。我理想情况下只将它设置在地方.. Application_Start ...但是有可能数据可能在中间丢失,我可能不得不将这些列表存储在Application_Start以外的应用程序中吗?如果是的话,我应该为任何种族条件做好准备吗?

如果您对使用application_Data有任何其他问题(比如可扩展性),请告诉我...但是我将存储在其中的数据的大小本身将保持非常小。

1 个答案:

答案 0 :(得分:0)

我不是专家,但如果列表是在运行时生成的,然后存储为Application变量,那么当应用程序池回收时它们将丢失。我不确定,但我认为这可以解决。有关详细信息,请参阅此question

竞争条件确实发生但是它们由应用程序管理。如果需要here.

,您可以随时使用Application.Lock()功能

请查看有关Application State的MSDN文章,该文章阅读良好并解决您的问题。简而言之,以下是需要注意的问题:

  • 存储内存对内存的影响
  • 并发和同步
  • 存储应用程序变量的可伸缩性含义
  • 存储在应用程序状态中的信息的生命周期影响 - 不是持久的