-1

私はこのxmlを持っています:

<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」であるすべての値タグを取得する必要があります。

後で、それらの値を確認して変更する必要があります。

このノードを取得するにはどうすればよいですか?

4

1 に答える 1

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必要なノードがすべて揃っています。

于 2012-12-17T11:14:49.273 に答える