将Xml加载到数据集中
问题描述:
我正在尝试将xml(从webservice)加载到数据集中。 我的问题是XML不总是具有相同的结构。将Xml加载到数据集中
它看起来像这样
<Articles>
<Article>
<id>7156</id>
<name>FirstArticle</name>
<pic>zaea.jpg </pic>
</Article>
<Article>
<id>7157</id>
<name>Second</name>
</Article>
<Articles>
正如你看到的第一个节点都有一个 “PIC” 的处理不当Seconde系列。我的问题是它只会将第一个节点加载到数据集中,因为“它具有所有属性”。如果一个节点缺少一个属性,它不会将其加载到数据集...
这就是我做
Dim dataSet As New DataSet()
Dim httpResponse As String
httpResponse = HttpRequest.WRequest("WEBSERVICE URL")
Dim xmlSR As System.IO.StringReader = New System.IO.StringReader(httpResponse)
dataSet.ReadXml(xmlSR)
我媒体链接尝试加载数据前添加数据集的列,但它并没有改变任何东西。 ..
我该怎么做? Thanx
答
在我看来,XML结构是无效的。属性不应该被避免时,有没有价值,你应该考虑写</pic>
或在第二条元素甚至<pic></pic>
答
尝试
dataSet.ReadXml(xmlSR,XmlReadMode.IgnoreSchema)
如果有此一模式,将不得不使用<xsl:choose>
条件。