[英]Get key/value mapping of cache only cache hits from IRedisClient
我正在使用ServiceStack提供的Redis客戶端的v3。 我正在實現“裝飾器模式”,並且有一個類將包裝緩存邏輯包裝在我的存儲庫中,這樣如果有緩存未命中,我可以查看存儲庫中的數據。 問題是在某些情況下,我想在緩存中添加null
,以便有一個條目,但沒有值。 這意味着我不會去數據庫獲取該值。
如果有什么辦法讓按鍵的映射,我需要知道的是/ 只緩存值命中為IRedisClient
接口。
有多種方法可以使用此接口從緩存中檢索值。 首先,我嘗試了GetAll<T>
方法。 這將返回緩存中的項目,如果不存在則返回T
的默認值。 這對我沒有幫助,因為它看起來像我已經為給定的鍵添加了一個null
條目。
然后我嘗試了GetValues
但只返回它找到的值,而不是關聯的鍵。
最后,我嘗試了GetValuesMap<T>
但這似乎與GetAll<T>
完全相同。
有沒有人知道如何獲得只有緩存命中的映射?
謝謝!
IRedisClient有一個名為ContainsKey(字符串鍵)的方法,您可以在嘗試Get之前檢查它。
如果ContainsKey返回true,則表示如果返回null值,則自行添加。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.