在VB.net中遍历字典列表

在VB.net中遍历字典列表,vb.net,Vb.net,我正在尝试迭代,并从使用ListServiceUtility.GetListItemData方法调用sharepoint填充的词典中获取值。我的代码如下所示 actualList = ListServiceUtility.GetListItemData(Test_Sharepointsite_url, myCred, Test_List_Name, Nothing, fieldNames, <Query/>, isRecursive, pagingSize) For Each En

我正在尝试迭代,并从使用ListServiceUtility.GetListItemData方法调用sharepoint填充的词典中获取值。我的代码如下所示

actualList = ListServiceUtility.GetListItemData(Test_Sharepointsite_url, myCred, Test_List_Name, Nothing, fieldNames, <Query/>, isRecursive, pagingSize)

For Each Entry As Dictionary(Of String, String) In actualList

            Debug.WriteLine(cnt)
            cnt += 1

            For Each pair In Entry
                Debug.WriteLine(innerCnt)
                innerCnt += 1
                Debug.WriteLine("Key:" & pair.Key & " Value:" & pair.Value)
            Next
        Next
actualList=ListServiceUtility.GetListItemData(测试共享点站点url、myCred、测试列表名称、Nothing、FieldName、isRecursive、pagingSize)
对于actualList中作为字典(字符串、字符串)的每个条目
Debug.WriteLine(cnt)
cnt+=1
对于条目中的每一对
Debug.WriteLine(innerCnt)
innerCnt+=1
Debug.WriteLine(“Key:&pair.Key&&Value:&pair.Value”)
下一个
下一个
正如我预期的那样,cnt将增加到4,因为我的sharepoint列表中有4个条目,但是,innerCnt根本没有增加,每个块的最后一个条目完全是旁路的


我没有发现任何错误,所以这是一个逻辑问题,不是语法问题。希望我已经提供了足够的信息来帮助这里的一些人

我同意这些评论,似乎内部循环没有被访问-您可以在调试器中逐步检查代码以进行检查吗

此外,在VB中,循环中的变量不会重置为0,因此innerCnt将包含通过循环的总次数,而不是每个条目的通过次数。如果这不是您想要的,则在内部循环之前需要innerCnt=0


注意:这是设计的,但这是C#中的oposite行为。

由于未正确创建feildname变量,字典为空。谢谢大家的帮助。

也许字典是空的?我必须同意马格纳斯的观点。你能调试并检查外循环中的“条目”吗?逻辑在我看来很好。唯一的解释是字典是空的;-)