【问题标题】:How to make per- http Request cache in ASP.NET 3.5如何在 ASP.NET 3.5 中制作 per-http 请求缓存
【发布时间】:2011-02-13 00:31:44
【问题描述】:

我们使用 ASP.NET 3.5(基于控件的方法)并且只需要为一个 http 请求提供特定的存储空间。

带有会话 id 键的线程特定缓存将不起作用,因为线程应该是池化的,因此我有机会在缓存中获取来自先前请求的数据,这在我的情况下是不可取的。我总是需要为整个请求中的每个请求提供全新的存储空间。

任何想法如何在 ASP.NET 3.5 中做到这一点?

【问题讨论】:

    标签: asp.net caching asp.net-3.5 request


    【解决方案1】:

    如何使用 Context 集合。这允许在您的所有控件之间共享数据,但仅持续请求。

    这样使用 context.Items("base_url") = "default.aspx"

    【讨论】:

    • 呃。接到电话.. 但 house9 接到电话 head HttpContext.Items["key"] = value;或 context.Items("base_url") = "default.aspx"
    【解决方案2】:

    我们已经使用HttpContext.Current.Items 集合来做 RequestScope 缓存。效果很好。

    【讨论】:

    • 重要 - 使用 await 或使用多个线程可能会导致 HttpContext.Current 不同或为空。
    【解决方案3】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-08
      • 2018-03-16
      • 2017-11-05
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      相关资源
      最近更新 更多