获取字典的长度

Ste*_*hRT 1 linq vb.net arrays dictionary

嘿,我在VB.net的这个Dictionary类中是新手.

我想重新检索Dictionary数组中有多少项: 在此输入图像描述

但这样做:

Dim showNumber As Integer = tmpShows.Length
Run Code Online (Sandbox Code Playgroud)

似乎没有产生4应有的效果?

字典的代码是:

Dim all = New Dictionary(Of String, Object)()
Dim info = New Dictionary(Of String, Object)()

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

Dim tmpShows = all.Item(info!Station)
Dim showNumber As Integer = tmpShows.Length
Run Code Online (Sandbox Code Playgroud)

为了获得我正在寻找的4长度,我缺少什么?

更新 在此输入图像描述 在此输入图像描述 在此输入图像描述 在此输入图像描述

    Dim all = New Dictionary(Of String, Object)()

    For Each channel In doc.DocumentNode.SelectNodes(".//div[@class='channel_row']")
        Dim info = New Dictionary(Of String, Object)()
        skipFirstShow = False

        With channel
            info!Logo = .SelectSingleNode(".//img").Attributes("src").Value
            info!Channel = .SelectSingleNode(".//span[@class='channel']").ChildNodes(3).ChildNodes(0).InnerText
            info!Station = .SelectSingleNode(".//span[@class='channel']").ChildNodes(3).ChildNodes(2).InnerText

            Dim style As String = .SelectSingleNode(".//span[2]").Attributes("style").Value

            If InStr(style.ToLower, "width: 0px;") <> 0 Then skipFirstShow = True

            info!Shows = From tag In .SelectNodes(".//a[@class='thickbox']")
                         Select New With {.Show = tag.Attributes("title").Value, .Link = tag.Attributes("href").Value}
            'Select New With {.Show = tag.Attributes("title").Value, .Link = tag.Attributes("href").Value}
        End With

        all.Add(info!Station, info.Item("Shows"))
        theLogoURL(theCount) = "https://xxx.com" & Trim(info.Item("Logo"))
        theChannelNum(theCount) = Trim(info.Item("Channel"))
        theStationCallLetters(theCount) = Trim(info.Item("Station"))

        Dim Shows As String = ""
        Dim ShowsDetail As String = ""
        Dim tmpShows = all.Item(info!Station)
Run Code Online (Sandbox Code Playgroud)

Kun*_*han 6

使用Count而不是length.

示例:

Dim showNumber As Integer = tmpShows.Count
Run Code Online (Sandbox Code Playgroud)