我在删除缓存项之前使用DataCache.GetObjectsByTag
来提取依赖项。我的Web应用程序将项目添加到缓存,win服务可以从缓存中删除项目。 Win服务没有对缓存中保存的对象的二进制引用。
当win服务尝试删除缓存对象时,我得到
'System.IO.FileNotFoundException:无法加载文件或程序集 'Web.Services.Contracts'。
我添加'Web.Services.Contracts'来赢得服务,它没有错误。
这是否意味着DataCache.GetObjectsByTag
反序列化每个对象?
感谢您的帮助。 APL
答案 0 :(得分:0)
当然DataCache.GetObjectsByTag,将下载客户端中的所有缓存对象。它类似于DataCache.Get或DataCache.GetItem,但适用于区域。
DataCacheItem对象以序列化形式存储在缓存集群中。如果客户端需要从缓存中获取项目,则客户端也必须引用与这些序列化对象关联的程序集。