1

嘿,我需要一些帮助来遍历我的字典列表。为此,我似乎找不到正确的语法。

这是我的代码:

Dim all = New Dictionary(Of String, Object)()
Dim info = New Dictionary(Of String, Object)()
Dim theShows As String = String.Empty

info!Logo = channel.SelectSingleNode(".//img").Attributes("src").Value
info!Channel = .SelectSingleNode("channel.//span[@class='channel']").ChildNodes(1).ChildNodes(0).InnerText
info!Station = .SelectSingleNode("channel.//span[@class='channel']").ChildNodes(1).ChildNodes(2).InnerText
info!Shows = From tag In channel.SelectNodes(".//a[@class='thickbox']")
            Select New With {channel.Show = tag.Attributes("title").Value, channel.Link = tag.Attributes("href").Value}

all.Add(info!Station, info.Item("Shows"))

theShows = all.Item("Shows")  '<--Doesnt work...

我只想从所有字典中提取“节目”中的任何内容。

在此处输入图像描述

4

2 回答 2

1

你的代码,

all.Add(info!Station, info.Item("Shows"))

theShows = all.Item("Shows")

的值info!Station被用作all字典中的 KEY 值。然后您尝试使用常量 string 访问该值"Shows"。我不确定你的意图是什么但是

theShows = all.Item(info!Station)

应该返回Shows使用 Key 存储的值info!Station

如果你想将节目列表作为一个字符串,你可以这样做,

Dim Shows as String = ""
For Each item in theShows
    Shows &= item.Show & vbNewLine
Next
于 2012-11-01T14:30:16.323 回答
1

你可以像这样循环

For Each pair As KeyValuePair(Of String, String) In dict

    MsgBox(pair.Key & "  -  " & pair.Value)
Next

来源:VB.Net 字典

温斯顿

于 2014-02-17T07:23:43.290 回答