【问题标题】:Why isn't caching (System.Web.Caching.Cache) used for state management?为什么缓存 (System.Web.Caching.Cache) 不用于状态管理?
【发布时间】:2013-03-14 11:34:40
【问题描述】:

我正在尝试理解Persisting DataSource in GridView after PostBack 的公认答案,因为我有类似的问题。

引用:

我避免不必要地将内容放入 VeiwState 或会话中,因此我认为保存这些数据的最佳方法是缓存它。

当我查看 MS 对状态管理的建议时:ASP.NET State Management Overview 缓存无处可寻。有一条评论(搜索 Jim_Huff)询问这个问题,但没有得到答复。

问题:在这种情况下,cache 是怎么回事 - 我应该使用它还是不使用它?

【问题讨论】:

    标签: caching asp.net-4.0 state-management


    【解决方案1】:

    该问题的答案由问题作者提供,这不是一个很好的答案。

    状态管理用于管理单个会话的状态。有保障措施确保您不会践踏其他用户的会话状态,以及用于清除旧会话、放弃会话等的明确机制。

    应用缓存用于管理整个应用的全局状态。不适合用它来管理会话状态。

    【讨论】:

    • 所以...状态管理映射到缓存的指定部分,为会话/视图/页面特定数据保留 - 还是完全分离?
    • 两者是完全分开的。您的会话状态存在于您的会话状态数据库(可以是内存中、SQL 数据库或 StateServer)中。应用程序缓存是一个完全不同的数据库(同样,它可以是内存中的,也可以是 SQL 数据库或其他数据库,具体取决于您的特定缓存技术)
    猜你喜欢
    • 2023-04-03
    • 1970-01-01
    • 2019-02-27
    • 1970-01-01
    • 1970-01-01
    • 2019-04-28
    • 1970-01-01
    • 2018-08-18
    • 2019-09-29
    相关资源
    最近更新 更多