當前位置:成語大全網 - 書法字典 - 有沒有好的方法可以遍歷redis中的所有鍵?

有沒有好的方法可以遍歷redis中的所有鍵?

由於數據結構的特殊性,NameValueCollection只提供Key的遍歷,不提供Value的遍歷。您必須首先知道密鑰,然後通過密鑰獲取值。

下面是MSDN的壹個例子。

使用系統;

使用系統。收藏;

使用系統。收藏。專門的;

公共類SamplesNameValueCollection {

公共靜態void Main(){

//創建並初始化新的NameValueCollection。

NameValueCollection myCol = new NameValueCollection();

我的科爾。Add(“紅色”、“Rojo”);

我的科爾。Add(“綠色”、“綠色”);

我的科爾。add(“blue”、“Azul”);

我的科爾。加(“紅”、“胭脂”);

//以兩種不同的方式顯示NameValueCollection中的值。

控制臺。WriteLine(“使用AllKeys屬性和Item(indexer)屬性顯示元素:“);

PrintKeysAndValues(myCol);

控制臺。WriteLine(“使用GetKey和Get顯示元素:“);

printkeysandvalues 2(myCol);

//通過索引或鍵獲取值。

控制臺。WriteLine(“索引1包含值{0}。“,myCol【1】);

控制臺。WriteLine(“關鍵字“red”的值為{0}。,myCol【“red“】);

控制臺。WriteLine();

//將值復制到字符串數組並顯示該字符串數組。

String【】myStrArr =新字符串【myCol。計數】;

我的科爾。copy to(myStrArr,0);

控制臺。WriteLine(“字符串數組包含:“);

foreach(myStrArr中的字符串s)

控制臺。WriteLine(“{ 0 }”,s);

控制臺。WriteLine();

//搜索壹個鍵並刪除它。

我的科爾。移除(“綠色”);

控制臺。WriteLine(“刪除“green“:“)後集合包含以下元素);

PrintKeysAndValues(myCol);

//清除整個集合。

我的科爾。clear();

控制臺。WriteLine(“集合在被清除後包含以下元素:“);

PrintKeysAndValues(myCol);

}

公共靜態void PrintKeysAndValues(NameValueCollection myCol ){

IEnumerator myEnumerator = myCol。get enumerator();

控制臺。WriteLine(“鍵值“);

myCol中的foreach(字符串s。全鍵)

控制臺。WriteLine(“{ 0,-10} {1}”,s,myCol【s】);

控制臺。WriteLine();

}

公共靜態void printkeysandvalues 2(NameValueCollection myCol ){

控制臺。WriteLine(“【INDEX】鍵值“);

for(int I = 0;我& lt我的科爾。數數;i++)

控制臺。WriteLine(“【{ 0 }】{ 1,-10} {2}“,I,myCol。GetKey(I),myCol。get(I));

控制臺。WriteLine();

}

}

/*

這段代碼產生以下輸出。

使用AllKeys屬性和Item(indexer)屬性顯示元素:

關鍵字值

紅色羅霍

綠色綠色

藍色藍色

使用GetKey和Get顯示元素:

【索引】鍵值

【0】紅色羅霍,胭脂

【1】綠色綠色

【2】藍色藍色

索引1包含值verde。

關鍵的“紅色”具有rojo,rouge的價值。

字符串數組包含:

魯日·羅霍

佛得角

阿祖耳

刪除“綠色”後,該集合包含以下元素:

關鍵字值

紅色羅霍

藍色藍色

清除後,集合包含以下元素:

關鍵字值