2011-02-18 4 views
0

내가 속성 값을 반대로 요소에 의해 특정 XML을 읽는 몇 가지 VB.Net의 XML 코드를 변환 한, 나는 나에게 난처한 상황에 빠진 다음 줄이 : XML XPath는 쿼리

Dim fNode As XmlNodeList = x.SelectNodes(String.Format("tables 
                  /table 
                  /field[ 
                   @pkid='{0}' 
                  ]", fk)) 

내 질문

에 관한됩니다 마지막 부분, 특정 속성과 반대로 요소 값을 검사하기 위해 어떻게 작성해야합니까? 내가 확인하고자하는 특정 요소는 <PK>이며 fk와 비교하여 평가하고 싶습니다.

감사합니다.

+0

편집 : FK 대해 검사 할 요소 PK –

답변

1
tables/table/field[PK='{0}'] 

이러한 맥락에서 속성에 대한 특별한 아무것도 없다 - 당신은 단순히 @을 제거하여 그냥 쉽게 PK 요소의 값에 대해 테스트 할 수 있습니다.

예시 입력 XML :

<tables> 
    <table> 
     <field> 
      <PK>42</PK> 
      <!-- Other fields --> 
     </field> 
    </table> 
</tables> 
+0

+1 정답이라고한다. –

+0

안녕하세요, 내가 사용하고있는 새로 정의 된 XML에 요소가 없습니다. 이제 pkid 값은 완전히 형성된 pk 요소 내에서 결정됩니다. 그것은 내가 fk와 비교하고 싶은 가치입니다. 감사. –

+0

당신이 말한 것처럼 @sign을 없애고 코드 "tables/table/field/pk [ '{0}']에 약간의 변화를 주면 고맙습니다."고맙습니다. –