2012-07-25 118 views
0

我正在嘗試將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

回答

0

在我看來,XML結構是無效的。屬性不應該被避免時,有沒有價值,你應該考慮寫</pic>或在第二條元素甚至<pic></pic>

0

嘗試

dataSet.ReadXml(xmlSR,XmlReadMode.IgnoreSchema) 

如果有此一模式,將不得不使用<xsl:choose>條件。