2010-02-17 49 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