2012-12-19 17 views
2

的/手柄使用我有一個被廣泛使用HttpContext.Cache ...
此應用程序現在想移動到的Windows Azure(多角色)傳統應用程序。
這當然會導致緩存在不同角色上不同步的問題。
我在想注入(我使用Autofac)我的「AzureCacheWrapper」(上Microsoft.ApplicationServer.Caching.DataCache包裝)成HttpContext.Cache所以遺留應用程序繼續工作,但使用Azure的緩存呢?

通常我們應該實現類似ICacheProvider但遺憾的是正在使用的緩存,我們沒有獲得(當第三方庫使用HTTP緩存不知道)

我不要了一些第三方的DLL不認爲緩存提供者可以通過web.config配置(就像OutputCaching),所以唯一的解決方案似乎以某種方式將我的實現注入運行時緩存的Add/Insert/Get方法。 不幸的是,因爲的System.Web.Caching.Cache的.NET實現的(密封類),我不認爲我可以覆蓋HttpContextBase返回不同的緩存或注入System.Web.Caching.Cache本身......如何注入HttpContex.Cache

感謝您的幫助! :)

回答

0

我覺得你的應用程序需要的代碼/結構的變化...

如果你有你自己的類,它處理獲取和設置緩存,它可能現在更容易改變你的代碼/架構在一個地方。

如果您打算使用Single角色,那麼您的scinario中不存在任何問題。如果可能,您可以在ExtraLarge插槽​​中運行您的卷軸。