2012-12-17 200 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拥有所有必需的节点。