2014-12-23 3 views
-2

주어진 부모 노드 본문 아래에있는 리프 노드 목록이 필요합니다. 기본적으로 아래의 XML은 11 및 10 과 같은 모든 노드를 원합니다.주어진 부모 노드에 대한 모든 리프 노드 읽기

나는 이것을 시도했지만 모든 노드를 가져온다. // [하지 ()] 나는 = nodeBody.SelectNodes이 var에 vnode에 뭔가를주고 싶어 예를 들어

("몸"+ @ "// [하지 ()]");

Body의 모든 리프 노드가되어야합니다.

<MAIN Txt="PC"> 
     <BODY Txt="TC"> 
     <Element_3 Txt="OC"> 
      <Element3_ID Name="yoy">10</Element3_ID> 
     </Element_3> 
     <Element_3 Txt="TRO"> 
      <Element_4 Txt="SSO"> 
      <Element4_ID Name="JOY">11</Element4_ID> 
      <Element4_ID Name="TOY">13</Element4_ID> 
      <Element4_ID Name="POY">14</Element4_ID> 
      <Element4_ID Name="SOY">17</Element4_ID> 
      <Element4_ID Name="GOY">18</Element4_ID> 
      <Element4_ID Name="FOY">19</Element4_ID> 
      </Element_4> 
     </Element_3> 
     </BODY> 
    </MAIN> 
+1

'C#'태그를 추가했습니다. xpath 대신 C#에서'Linq2XML'을 사용할 수없는 이유가 무엇입니까? – Shaamaan

답변

0

당신에게 빈 요소 노드의 모든 텍스트 노드를 제공하거나 다른 요소 노드를 포함하는 모든 하위 요소 노드를 선택 .//*[not(*)]을 사용 자식 노드를 가진 모든 자손 노드를 선택하기 위해 경로 .//node()[not(node())]를 사용합니다. 완전히 비어있는 요소 노드를 선택하지 않으려면 .//*[not(*) and normalize-space()]을 사용하십시오.

관련 문제