C# 在Appfabric缓存中逐出对象时获取与该对象关联的标记的详细信息

C# 在Appfabric缓存中逐出对象时获取与该对象关联的标记的详细信息,c#,caching,notifications,tags,appfabric,C#,Caching,Notifications,Tags,Appfabric,我在C#.net framework中使用Appfabric缓存1.1版,目前我希望在某个特定对象被逐出时获取与该对象关联的标记列表 在做了一些研究之后,我发现我们可以使用Appfabric提供的通知来捕获从缓存中删除的对象的详细信息 (参考Hammad Rajjoub的Microsoft Windows Server AppFabric Cookbook) 但是,从回调函数获得的详细信息不包含我要检索的标记列表 获取标记列表的主要目的是删除与这些标记关联的所有其他对象,因为我应该存储在缓存中

我在C#.net framework中使用Appfabric缓存1.1版,目前我希望在某个特定对象被逐出时获取与该对象关联的标记列表

在做了一些研究之后,我发现我们可以使用Appfabric提供的通知来捕获从缓存中删除的对象的详细信息

(参考Hammad Rajjoub的Microsoft Windows Server AppFabric Cookbook)

但是,从回调函数获得的详细信息不包含我要检索的标记列表

获取标记列表的主要目的是删除与这些标记关联的所有其他对象,因为我应该存储在缓存中的数据是相关的


欢迎任何想法或不同的方法。

AppFabric不提供包含已删除项的元数据。正如@stuartd所提到的,由于逐出而移除项时,不会调用回调

除了Appfabric之外,还有一些缓存解决方案提供了这样的功能。Like允许注册并指定触发通知时所需的信息类型。您可以注册事件通知以仅获取项目元数据


NCache还允许添加项的键依赖项,以设置一个项依赖于任何其他项。因此,如果因任何原因删除了依赖项,则会自动删除所有依赖项。不幸的是,AppFabric中还没有键依赖项功能。

只有在显式调用AddItem、ReplaceItem或RemoveItem时,才会调用项级回调,而不是在项已过期或由于集群内存压力而从缓存中逐出时调用项级回调。您正在尝试处理哪种情况?@stuartd,我正在尝试处理当对象从缓存中移出时,当缓存内存已超过水印级别(低或高)时的情况。因此,根据您的评论,当对象被逐出时,是否有其他方法可以知道与该对象关联的标记。感谢应该是可能的,请参阅我的,但没有内置的功能。@stuartd,感谢您的帮助,我们将深入了解您提到的链接内容。