C#根據條件搜尋Infopath產生的XML資料

來源:互聯網
上載者:User
Infopath產生的XML檔案如下

<Table1>
    <a></a>
    <b></b>
        <c>
             <c1>1</c1>
             <c2>書</c2>
             <c3>好</c3>
        </c>
        <c>
             <c1>2</c1>
             <c2>書</c2>      
             <c3></c3>
        </c>
         <c>
             <c1>3</c1>
             <c2>書</c2>
             <c3>好</c3>
        </c>
        <c>
             <c1>4</c1>
             <c2>4</c2>
             <c3>4</c3>         
        </c>
</Table1>

我想取得所有 c2 = '書' 的 c1的值,網上搜了好半天都沒有類似的例子,只好自己根據Infopath模板中的XSL中的Xpath來琢磨

如下是可行的方法:

IXMLDOMNodeList nodelist = thisXDocument.DOM.SelectNodes("//Table1/b/c/c1[../c2 = '書']");
或者
IXMLDOMNodeList nodelist = thisXDocument.DOM.SelectNodes("//Table1/b/c/c1[../c2 = \"書\"]");

如果想取得 c2 ='書' 並且 c3 = '好'的c1值:

IXMLDOMNodeList nodelist = thisXDocument.DOM.SelectNodes("//Table1/b/c/c1[../c2 = '書' and ../c3 = '好']");
或者
IXMLDOMNodeList nodelist = thisXDocument.DOM.SelectNodes("//Table1/b/c/c1[../c2 = \"書\" and ../c3 = '好

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.