我正在使用DataCache.GetObjectsByTag
提取依赖项,然后再删除缓存项。我的Web应用程序将项目添加到缓存中,而win服务可以从缓存中删除项目。 Win服务没有对保存在缓存中的对象的二进制引用。
当win服务尝试删除缓存对象时,我得到了
'System.IO.FileNotFoundException:无法加载文件或程序集
“ Web.Services.Contracts”。
我添加“ Web.Services.Contracts”来赢得服务,它可以正常工作。
这是否意味着DataCache.GetObjectsByTag
反序列化每个对象?
感谢你的帮助。
杀伤人员地雷
最佳答案
当然DataCache.GetObjectsByTag,将下载客户端中的所有缓存对象。它类似于DataCache.Get或DataCache.GetItem,但用于区域。
DataCacheItem对象以序列化形式存储在缓存群集中。如果客户端需要从缓存中获取项目,则与这些序列化对象关联的程序集也必须由客户端引用。
关于c# - Appfabric GetObjectsByTag反序列化问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15283592/