C#Redis Cache:如何检查某个特定的键值是否更改,然后从数据层(即原始源)失效并设置nw值

C#Redis Cache:如何检查某个特定的键值是否更改,然后从数据层(即原始源)失效并设置nw值,c#,redis,cache-invalidation,C#,Redis,Cache Invalidation,正在寻找以下实施方案: 1) 如果值已更改,则检查密钥 2) 如果是,则使密钥无效 3) 使用数据层(即原始源)中的新值设置密钥为什么不调用AddOrUpdate?要使用CacheEntryChangeMonitor类:提供一个基类,表示可以实现的ChangeMonitor类型,以便监视对缓存项的更改。要更新缓存还是使用CacheEntryChangeMonitor。我想这两件事是完全不同的。我的问题是:我的缓存被实现了,它正在工作。我想看看缓存中的任何值在原始源中是否发生了变化。在此基础上,我

正在寻找以下实施方案:

1) 如果值已更改,则检查密钥

2) 如果是,则使密钥无效


3) 使用数据层(即原始源)中的新值设置密钥

为什么不调用
AddOrUpdate
?要使用CacheEntryChangeMonitor类:提供一个基类,表示可以实现的ChangeMonitor类型,以便监视对缓存项的更改。要更新缓存还是使用CacheEntryChangeMonitor。我想这两件事是完全不同的。我的问题是:我的缓存被实现了,它正在工作。我想看看缓存中的任何值在原始源中是否发生了变化。在此基础上,我想触发一些事情。您建议的AddorUpdate可以实现,但是如果原始源代码中的值发生了更改,如何知道(我猜cacheEntryMonitor类会这样做),我不确定它是否能与Redis一起工作。