2013-01-25 300 views
-1

我有將XML發佈到WebResponse並獲取Xml數據的輸出/響應的代碼。 如果他們是一個錯誤,當發佈它導致這樣的XML輸出響應:檢查XML元素的最佳方法

<OUTPUT version="1.0"> 
    <ERROR type="Incomplete">Invalid data</ERROR> 
</OUTPUT> 

的第一個元素將是「錯誤」如果遇到一個錯誤,如果遇到沒有錯誤的第一個元素將是「INFO 」。 他們的方式檢查webResponse XML第一個元素是否爲「錯誤」,如果是的話,抓住標籤內的類型屬性和文本「無效數據」。如果沒有錯誤,什麼都不要做。不知道如何解析xml數據。

XDocument doc = XDocument.Parse(XmlResponse) 
errorMsg = doc.Parse(XMLResponse).Descendants("ERROR").Select(e => (string)e.Attribute("type")).First().ToString(); 

回答

0

爲了得到錯誤類型:

XDocument doc = XDocument.Parse(XmlResponse) 
XElement firstElement = doc.Root.Elements().First(); 
if(firstElement.Name == "ERROR") 
{ 
    string errorType = firstElement.Attribute("type").Value; 
    string message = firstElement.Value; 
    // Process error 
} 
else 
{ 
    // It is an info 
} 
+0

非常感謝。 – Jt2ouan

1

可以使用後代( 「ERROR」)FirstOrDefault(),並檢查了空。

+0

XElement doc = XElement.Parse(returnResponseUpdate); XElement error = doc.Descendants(「ERROR」)。FirstOrDefault(); if(error!= null) { } – Jt2ouan