2011-12-28 229 views
2

我有一个嵌套的字典,如:的嵌套字典

Public collectionMain As New Dictionary(Of String, Dictionary(Of String, String)) 

当插入一个新项目:

collectionMain.Add(node.SelectSingleNode("key").InnerText.Trim, collectionSub) 
collectionSub.Clear() 

在加我collectionSub充满键&值。 但是,当调用清除时,collectionMain.value是空的。

如何保持collectionMain字典值?

collectionSub需要清除,它在循环中进行填充。

谢谢

回答

2

你需要创建一个New词典(字符串,字符串)为每个值。

+0

你是什么意思?为collectionmain的每个字典创建一个NEW collectionSub?它在一个循环中,我不知道我需要多少个collectionSubs。 – TomVD 2011-12-28 14:32:28

+0

@TomVD:在循环内创建一个'新字典(字符串,字符串)()'。 – SLaks 2011-12-28 14:39:31

+0

@SLake,thx做到了 – TomVD 2011-12-28 14:44:45

1

每当你添加新字典的项目,你将不得不宣布一个新的子字典是关键:

collectionMain.Add(node.SelectSingleNode("key").InnerText.Trim, _ 
        New Dictionary(Of String, String)) 

collectionSub变量实在不应该存在的,因为在collectionMain每个按键都有它自己的字典。