我们前后从XML文件生成了一个类。我想我们使用的是xsd.exe。
XML文件中的一个主要节点集合呈现为:
<System.Xml.Serialization.XmlElementAttribute("PRODUCT")> _
Public Property PRODUCT() As PRODUCT()
Get
Return Me.pRODUCTField
End Get
Set
Me.pRODUCTField = value
End Set
End Property
可以肯定的是,后来定义了PRODUCT类,它运行良好。序列化和反序列化的罚款。不需要担心或操纵它。
现在我们必须重新审视和操纵数据。
但是什么样的集合(数组?)是Public Property PRODUCT() As PRODUCT()
,我们如何循环呢?并添加到它?
基本问题,我知道。可能对generics太满意了,现在xsd向我抛出了一些不是List(of T)
我害怕的事情。
答案 0 :(得分:2)
您的代码
公共财产PRODUCT()as PRODUCT()
返回PRODUCT类型的对象数组。现在,无论该类型是集合,结构还是数组,我都不知道您提供的代码。循环它的最简单方法就是这样。
For each prod as PRODUCT in rtnPRODUCTS
'Do Something
Next
答案 1 :(得分:2)
不要被那里的两套parens弄糊涂。第一组,只是属性名称后面的parens,而第二组将返回类型标识为Product对象数组。
类似于:Public Property IDs() As Integer()
该属性只返回一个整数数组,并且只有在ID()附近的parens存在,因为你声明了属性。
因为它似乎是Product对象的标准数组,所以你可以用任意数量的普通循环遍历它:
For Each p As PRODUCT In obj.PRODUCTS()
...
Next
或
For i As Integer = 0 To obj.PRODUCTS.Length-1
...
Next i