I have a solution for this problem in WCF using MemoryCache. Store the AppFabric cache object in memory so you don't have to call the expensive initialization of the DataCacheFactory.
Private Shared _memCache As MemoryCache
Public Shared ReadOnly Property Cache As DataCache
Get
If _memCache Is Nothing Then
_memCache = MemoryCache.Default
Dim factory As New DataCacheFactory
_memCache("memCache") = factory.GetCache("appFabricCache")
End If
Return CType(_memCache("memCache"), DataCache)
End Get
End Property
Trying to use HttpContext is not the way to go in WCF.
Libraries you'll need to include for this:
Imports System.Runtime.Caching
Imports Microsoft.ApplicationServer.Caching