2012-12-17 247 views
-1

的價值我有這樣的XML:獲取speciffic名稱標籤

<ns0:data> 
<ns0:row> 
    <ns0:column> 
     <ns0:name>F_DOCNUMBER</ns0:name> 
     <ns0:value>617271</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCDATE</ns0:name> 
     <ns0:value>15685</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCTYPE</ns0:name> 
     <ns0:value>1,999,152</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>INSUREDIDNUMBER</ns0:name> 
     <ns0:value>310794763</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>BATCHNAME</ns0:name> 
     <ns0:value>L1000024831310001</ns0:value> 
    </ns0:column> 
</ns0:row> 
<ns0:row> 
    <ns0:column> 
     <ns0:name>F_DOCNUMBER</ns0:name> 
     <ns0:value>617284</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCDATE</ns0:name> 
     <ns0:value>15685</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCTYPE</ns0:name> 
     <ns0:value>1,999,403</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>INSUREDIDNUMBER</ns0:name> 
     <ns0:value>310794763</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>BATCHNAME</ns0:name> 
     <ns0:value>L1000024831320002</ns0:value> 
    </ns0:column> 
</ns0:row> 
<ns0:row> 
    <ns0:column> 
     <ns0:name>F_DOCNUMBER</ns0:name> 
     <ns0:value>617283</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCDATE</ns0:name> 
     <ns0:value>15685</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>DOCTYPE</ns0:name> 
     <ns0:value>1,999,235</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>INSUREDIDNUMBER</ns0:name> 
     <ns0:value>310794763</ns0:value> 
    </ns0:column> 
    <ns0:column> 
     <ns0:name>BATCHNAME</ns0:name> 
     <ns0:value>L1000024831320001</ns0:value> 
    </ns0:column> 
</ns0:row> 
</ns0:data> 

我需要把所有的價值標籤,他們的名字是「DOCTYPE」。

後來我需要檢查並更改它們的值。

我怎樣才能得到這個節點?

謝謝。

+1

[你有什麼試過?](http://whathaveyoutried.com) – jlordo

回答

0

可以使用LINQXML獲得所需要的節點以此爲

XDocument doc = XDocument.Load("YourXmlFilePath"); 
XNamespace ns = "YourNameSpacegoesHere"; 

var query = from d in doc.Descendants(ns + "column") 
      where d.Element(ns + "name").Value.ToString() == "DOCTYPE"     
      select d; 

現在query擁有所有必需的節點。