Html 如何使用多个列表反序列化表
我无法反序列化此表,因为有多个列表,我知道我需要一个列表,用于重复的trs,也用于重复的tds,当尝试读取tds的值时,问题就出现了,因为我有一个列表格式 以下是我的xml:Html 如何使用多个列表反序列化表,html,vb.net,xml-serialization,Html,Vb.net,Xml Serialization,我无法反序列化此表,因为有多个列表,我知道我需要一个列表,用于重复的trs,也用于重复的tds,当尝试读取tds的值时,问题就出现了,因为我有一个列表格式 以下是我的xml: <table> <tr> <td>1</td> <td>2</td> </tr> <tr> <td>3</td> <td>4</td> </tr>
<table>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
</tr>
</table>
那么,关于如何获得tds中的每个值,有什么想法吗?谢谢 您当前将
tr.td
声明为一个列表,因此不能仅将其作为单个字符串输出。您需要循环浏览列表中的每个td
项:
For Each currTr As tr In rr2.tr
For Each currTd As td In currTr.td
MessageBox.Show(currTd.td)
Next
Next
但是,这不会正确读取示例XML中的值。在您的示例中,每个td
元素都包含一个字符串,而不是另一个同名子元素。但您的数据结构假定XML的结构如下所示:
<table>
<tr>
<td>
<td>1</td>
</td>
<td>
<td>2</td>
</td>
</tr>
<tr>
<td>
<td>3</td>
</td>
<td>
<td>4</td>
</td>
</tr>
</table>
Public Class table
Private newtr As List(Of tr)
<XmlElement()> _
Public Property tr() As List(Of tr)
Get
Return newtr
End Get
Set(ByVal value As List(Of tr))
newtr = value
End Set
End Property
End Class
Public Class tr
Private newtd As List(Of String)
<XmlElement()> _
Public Property td() As List(Of String)
Get
Return newtd
End Get
Set(ByVal value As List(Of String))
newtd = value
End Set
End Property
End Class
For Each currTr As tr In rr2.tr
For Each currTd As String In currTr.td
MessageBox.Show(currTd)
Next
Next
您当前将
tr.td
声明为列表,因此不能仅将其作为单个字符串输出。您需要循环浏览列表中的每个td
项:
For Each currTr As tr In rr2.tr
For Each currTd As td In currTr.td
MessageBox.Show(currTd.td)
Next
Next
但是,这不会正确读取示例XML中的值。在您的示例中,每个td
元素都包含一个字符串,而不是另一个同名子元素。但您的数据结构假定XML的结构如下所示:
<table>
<tr>
<td>
<td>1</td>
</td>
<td>
<td>2</td>
</td>
</tr>
<tr>
<td>
<td>3</td>
</td>
<td>
<td>4</td>
</td>
</tr>
</table>
Public Class table
Private newtr As List(Of tr)
<XmlElement()> _
Public Property tr() As List(Of tr)
Get
Return newtr
End Get
Set(ByVal value As List(Of tr))
newtr = value
End Set
End Property
End Class
Public Class tr
Private newtd As List(Of String)
<XmlElement()> _
Public Property td() As List(Of String)
Get
Return newtd
End Get
Set(ByVal value As List(Of String))
newtd = value
End Set
End Property
End Class
For Each currTr As tr In rr2.tr
For Each currTd As String In currTr.td
MessageBox.Show(currTd)
Next
Next
啊!!是你:)我没有通过你的数值认出你。我需要更新我的照片。恐怕有点太麻烦了。我应该把它修好,你看起来像个程序员,没什么问题。:)啊!!是你:)我没有通过你的数值认出你。我需要更新我的照片。恐怕有点太麻烦了。我应该把它修好,你看起来像个程序员,没什么问题。:)