gpt4 book ai didi

asp.net - 如何注入(inject)/处理 HttpContex.Cache 的使用

转载 作者:行者123 更新时间:2023-12-02 07:31:59 25 4
gpt4 key购买 nike

我有一个广泛使用 HttpContext.Cache 的遗留应用程序...
该应用程序现在应该迁移到Windows Azure(多角色)
这当然会导致不同角色上的缓存不同步的问题。
我正在考虑将我的“AzureCacheWrapper”( Microsoft.ApplicationServer.Caching.DataCache 上的包装器)注入(inject)(我正在使用 Autofac)到 HttpContext.Cache 中。那么旧应用程序会继续工作但使用 Azure 缓存吗?

通常我们应该实现类似 ICacheProvider 的东西但不幸的是,有一些 3rd 方 DLL 使用我们无权访问的缓存(并且不知道 3rd 方库何时使用 Http 缓存)

我不认为缓存提供程序可以通过 web.config (如 OutputCaching)进行配置,因此在我看来,唯一的解决方案是以某种方式将我的实现注入(inject)到运行时缓存上的 Add/Insert/Get 方法中。不幸的是,由于 System.Web.Caching.Cache (密封类)的 .NET 实现,我认为我无法覆盖 HttpContextBase返回不同的缓存或注入(inject) System.Web.Caching.Cache本身...

感谢您的帮助! :)

最佳答案

我认为您的应用程序需要代码/架构更改...

如果您有自己的类来处理获取和设置缓存,那么现在可以更轻松地在一处更改代码/架构。

如果您要使用单一角色,那么您的场景中不存在任何问题。如果可能的话,您可以在 ExtraLarge 插槽中运行您的网络角色。

关于asp.net - 如何注入(inject)/处理 HttpContex.Cache 的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13960166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com