无法调用Windows Azure Cache的获取实例

时间:2012-06-17 23:06:12

标签: c# azure azure-storage azure-worker-roles

尝试在Windows Azure中创建新的专用缓存角色,但每次运行此代码时都会获得NotSupportedException: This operation is not supported by the cache异常。总结一下,这就是我所做的......

我使用以下代码构建缓存,只要我调用GetCache(string)就会发生异常:

_dataCacheFactory = new DataCacheFactory();
_cache = _dataCacheFactory.GetCache(cacheName);

此外,我添加了相应的<dataCacheClients>配置部分和对以下程序集的引用( All引用Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\ref 中的程序集):

  • Microsoft.ApplicationServer.Caching.AzureClientHelper
  • Microsoft.ApplicationServer.Caching.AzureCommon
  • Microsoft.ApplicationServer.Caching.Client
  • Microsoft.ApplicationServer.Caching.Core
  • Microsoft.Web.DistributedCache

我还在Azure项目中设置了缓存工作者角色。

据我所知,我已经按照所有MSDN文档进行操作,有人可以在这里建议可能出错的地方吗?

2 个答案:

答案 0 :(得分:2)

我猜你正在尝试获取命名缓存,在Azure共享缓存中为not supported。而不是_dataCacheFactory.GetCache(cacheName),请尝试使用_dataCacheFactory.GetDefaultCache()

答案 1 :(得分:2)

当您使用Windows Azure Cache (Dedicated and Co-located Cache)时,您必须使用下面的参考(这是作为预览发布):

C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\ref\CachingPreview

当您使用Windows Azure Shared Cache时,您应该使用下面的参考:

C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\ref\

Windows Azure缓存(专用和共存缓存) Windows Azure共享缓存之间的区别在于第一个驻留在虚拟机中并在实例之间共享通过创建累积共享缓存,而第二个缓存位于虚拟机之外(在Windows Azure中,您可以从Windows Azure管理门户配置它),并且所有实例都通过网络管道连接此缓存。