ASP.NET:如何检查缓存字典的值?

时间:2010-10-22 13:42:25

标签: asp.net

不确定怎么做但我可以像这样缓存字典:

Cache.Insert(“CacheName”,Dictionary)

需要一些方向。字典是从数据库中获取的两个字符串值。用户将输入一个字符串,我需要将其与缓存字典中的值进行比较。

2 个答案:

答案 0 :(得分:0)

您可以通过编写

从缓存中获取字典
var dict = (Dictionary<X, Y>) cache["CacheName"];

答案 1 :(得分:0)

通常,您需要从缓存中访问对象,强制转换它,并使用ContainsKey属性。这是一个例子:

首先将字典添加到缓存中:

IDictionary<string, string> testDict = new Dictionary<string, string>();
testDict.Add("Test", "test");
Cache.Insert("dict", testDict);

然后,当您需要这样做时,访问缓存的对象并使用它ContainsKey属性来确定它是否包含搜索的密钥。

 var dict = Cache["dict"] as IDictionary<string, string>;

 if (dict != null)
 {
     string testValue = "test";
     if(dict.ContainsKey(testValue))
     {
        /* some logic here */ 
     }     
 }

您可以通过以下方式访问该值:

if (dict != null)
 {
     string testValue = "test";
     if(dict.ContainsKey(testValue))
     {
        /* some logic here */ 
        string value = dict[testValue];
     }     
 }