将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>条件。