2013-06-21 54 views
0

我嘗試使用C#獲取XElement的子節點值。 XElement塊在下面。我的目的是在'c0'節點獲取值。我怎樣才能做到這一點?在XElement獲取子節點值

// client is Orion SDK (SWIS) client. 
XElement xe = client.QueryXml("select Uri FROM Orion.Pollers WHERE NetObjectID = 15", null); 

的XElement結果塊:

<queryResult xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.solarwinds.com/2007/08/informationservice"> 
<template> 
<resultset> 
    <column name="Uri" type="String" ordinal="0" /> 
</resultset> 
</template> 
<data> 
    <row> 
     <c0>swis://solarwinds./Orion/Orion.Pollers/PollerID=55</c0> 
    </row> 
    <row> 
     <c0>swis://solarwinds./Orion/Orion.Pollers/PollerID=56</c0> 
    </row> 
    <row> 
     <c0>swis://solarwinds./Orion/Orion.Pollers/PollerID=57</c0> 
    </row> 
    <row> 
     <c0>swis://solarwinds./Orion/Orion.Pollers/PollerID=58</c0> 
    </row> 
    </data> 
</queryResult> 
+1

給我們你的代碼它會很容易更新它,而不是我們從頭開始 – Bunny

+0

對不起,我忘了粘貼代碼塊。 – juniorDev

回答

0

我找到了解決辦法。代碼塊在下面。

XElement xe = client.QueryXml("SELECT Uri FROM Orion.Pollers WHERE NetObjectID = 15", null); 

    IList<XElement> indexedElements = xe.Elements().ToList(); 

    foreach (var item in ((XElement)xe.Elements().ToList()[1]).Elements().ToList()) 
    { 
     try 
     { 
      //Do something with 
      //item.Value 
     } 
     catch (Exception exc) 
     { 
      throw exc; 
     } 


    }