2010-02-17 3 views
0

안녕 난 다음 XMLXLINQ : 사용하여 XML의 노드를 제외하는 방법 XLINQ

<students> 
    <student> 
    <id>12</id> 
    <name>Mohsan</name> 
    </student> 
    <student> 
    <id>2</id> 
    <name>Ali</name> 
    <address> 
     <country>Pakistan</country> 
    </address> 
    <address> 
     <country>India</country> 
    </address> 
    <parent> 
     <id>12</id> 
     <address> 
     <country>Pakistan</country> 
     </address> 
    </parent> 
    </student> 
    <student> 
    <id>3</id> 
    <name>Azhar</name> 
    </student> 
</students> 

난 단지 학생의 주소를 얻기 할 수 있습니다. 부모의 주소가 아닙니다. 나는이 쿼리를 사용했다.

var stds = from std in doc.Descendants("student") 
       select new 
        { 
         ID = std.Element("id").Value, 
         Name = std.Element("name").Value, 
         Address = from addr in std.Descendants("address") 
            select addr.Element("country").Value 
        }; 

그러나이 쿼리는 부모의 주소도 나에게 돌려 주었다. 나는 그다지 원하지 않는다. 학생은 여러 주소를 가질 수 있습니다.

+0

는 아무 대답 :( – Mohsan

답변

1

사용 std.Elements("address") 대신 여전히 std.Descendants("address")

+0

감사합니다. 내 문제를 해결하지 .. 어떻게 검색시 상위 주소를 제외하는 저에게 알려주세요 :) – Mohsan

관련 문제