在Web角色中使用HttpSessionState

时间:2013-07-18 14:15:03

标签: azure session-state azure-storage azure-web-roles azure-caching

我希望能够在我的Azure网络角色中使用dedicated or co-located caching

问题是我正在迁移的应用程序广泛使用HttpSessionState。我不想更改所有这些代码,因为:

  1. 耗费时间(特别是测试时)

  2. 我无法通过使用HttpSessionState

  3. 强制开发人员
  4. 我希望尽可能避免供应商锁定

  5. 是否没有专用和共址缓存的会话提供程序,以便我可以保留现有代码?

1 个答案:

答案 0 :(得分:2)

我解决了这个问题。要在专用或共同定位的Azure缓存中使用ASP.NET会话状态,需要在web.config中设置以下会话提供程序:

<sessionState mode="Custom" customProvider="AFCacheSessionStateProvider">
  <providers>
    <add name="AFCacheSessionStateProvider"
         type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache"
         cacheName="default" dataCacheClientName="default"
         applicationName="AFCacheSessionState"
    />
  </providers>
</sessionState>