0
相當簡單,但我的知識在這方面有限。我使用以下c#代碼來訪問我的SGML and XML documents
中的元素值。Linq to XML - 如何獲得此元素值
當文檔中只有一個具有給定名稱的元素時,它工作正常,但只要具有多個具有相同名稱的元素,它就會引發異常,顯然!
我需要使用xpath或一些其他方式來指定元素的位置,我試圖獲得的價值。
這工作得很好,如果只有一個在doc「chapnum
」,但我需要在以下嵌套位置「dmaddres/chapnum
」具體獲得「chapnum
」的值。
請問怎麼樣?
以下是xml文檔的示例。我試圖獲取嵌套在「dmaddress
」元素中的「chapnum
」元素的值。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dmodule []>
<dmodule xmlns:dc="http://www.purl.org/dc/elements/1.1/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.s1000d.org/S1000D_2-3-1/xml_schema_flat/descript.xsd">
<idstatus>
<dmaddres>
<dmc><avee><modelic>xx</modelic><sdc>A</sdc><chapnum>29</chapnum>
<section>1</section><subsect>3</subsect><subject>54</subject><discode
>00</discode><discodev>AAA</discodev><incode>042</incode><incodev
>A</incodev><itemloc>D</itemloc></avee></dmc>
<dmtitle><techname>Switch</techname><infoname>Description of function</infoname>
</dmtitle>
<issno inwork="00" issno="001" type="new"/>
<issdate day="20" month="07" year="2012"/>
<language language="sx"/></dmaddres>
<status>
<security class="01"/><datarest><instruct><distrib>-</distrib><expcont
>Obey the national regulations for export control.</expcont></instruct>
<inform><copyright><para><refdm><avee><modelic>xx</modelic><sdc>A</sdc>
<chapnum>29</chapnum><section>1</section><subsect>3</subsect><subject
>54</subject><discode>00</discode><discodev>ZZZ</discodev><incode
>021</incode><incodev>Z</incodev><itemloc>D</itemloc></avee></refdm
></para></copyright><datacond>BREXREF=AJ-A-00-00-00-05ZZZ-022Z-D VERSUB=CDIM-V6</datacond>
</inform></datarest>
<rpc>xxxxx</rpc>
<orig>xxxxx</orig>
<applic>
<type>-</type>
<model model="xxxxx"><mfc>xxxxx</mfc><pnr>xxxxxxx</pnr></model>
</applic>
<brexref><refdm><avee><modelic>xx</modelic><sdc>A</sdc><chapnum>00</chapnum>
<section>0</section><subsect>0</subsect><subject>00</subject><discode
>05</discode><discodev>ZZZ</discodev><incode>022</incode><incodev
>Z</incodev><itemloc>D</itemloc></avee></refdm></brexref>
您的描述比示例XML顯示要查找的值要難得多。請用一個例子來編輯你的問題。 – 2013-05-01 09:14:09
您也應該發佈示例xml文件。它會幫助你更準確地得到答案。 – 2013-05-01 09:19:05
'doc.Descendants(「dmaddress」)。後代(「chapnum」)。Single()。Value'? – Corak 2013-05-01 09:27:37