沒想到c#中的Hashtable插入相同主鍵的Object竟然報錯 :(
想將兩個Hashtable嵌套進行遍歷然後放到第三個Hashtable中,爲了節省遍歷時間,想把遍歷過去的項刪掉也不行,真是不爽!!!
Hashtable vendor = new Hashtable();
Hashtable store = new Hashtable();
//對vendor和store賦值。。。
Hashtable table = new Hashtable();
foreach (string s in vendor.Keys)
{
string name = (string)vendor[s];
string storeStr = "";
int i = 0;
foreach(string t in store.Keys)
{
if(s.Equals(store[t]))
{
if( i==0 )
storeStr += "(shopid="+t;
else
storeStr += " or shopid="+t;
i++;
}
//本來想在這裏將遍歷過後的項移去的,估計foreach裏面的keys只是第一次取的,所有做移除操作會報錯
}
if(storeStr.Length != 0) //沒有店鋪的不做插入
{
storeStr += ")";
string[] str = new string[2];
str[0] = name;
str[1] = storeStr;
//Console.WriteLine("vendorid="+s+" name="+str[0]+" storeStr="+str[1]);
table.Add(s,str);
}
}