2010-10-14 68 views
1

我正在使用Application [「」]來存儲一些非常小的列表。我理想地將它設置在唯一的地方.. Application_Start ...但是有沒有機會數據可能會在中途丟失,我可能不得不將這些列表存儲回Application_Start以外的應用程序中?如果是的話,我應該爲任何種族的狀況做好準備嗎?mvc中的應用程序狀態

讓我知道如果你有任何其他關於使用application_Data(比如可伸縮性??)的疑慮......但是我將存儲在其中的數據的大小本身將保持非常小。

回答

0

我不是專家,但如果列表正在運行時生成,然後作爲應用程序變量存儲,則在應用程序池回收時它們將丟失。我不確定,但我認爲這可以基於解決。有關更多詳細信息,請參閱此question

競爭條件確實發生,但他們的afaik由應用程序管理。你可以隨時使用Application.Lock()功能,如果需要描述here.

看看這個MSDN文章關於Application State這是很好的閱讀和解決你的問題。總之,以下被認爲是要注意的問題的:

  • 存儲併發與同步
  • 存儲應用程序變量
  • 的信息生命週期影響的可擴展性的影響存儲的東西
    • 內存的影響在應用程序狀態 - 不耐用
    +0

    是的我已閱讀MSDN文章,但我仍然無法決定是否應該繼續它與否。 – TPR 2010-10-15 05:21:01