2013-01-23 26 views
-2

我創建了一個這樣的XML在XML獲取的所有節點名在Silverlight

<names> 
<name> 
nixon 
</name> 
</names> 

我想通過迭代foreach循環或使用的XDocument在Silverlight任何其他循環的每個節點名。

我怎樣才能得到這個節點的名字?

回答

2

可以使用XElement的DescendantsAndSelf()方法獲取所有節點及其名稱。

foreach (XElement child in doc.Root.DescendantsAndSelf()) 
{ 
    Console.WriteLine(child.Name.LocalName); 
} 

DescendantsAndSelf()返回包含該元素的元素,並且該元素的所有後代元素的集合,按文檔順序。

+0

您好.. @ ryadavilli感謝您replay..can你看我以前的question.pls建議爲一個解決方案problem.its真正幫助me..advance感謝。這是該問題的鏈接..http://stackoverflow.com/questions/14473569/write-one-xml-from-other-xml-in-silverlight-with-c-sharp。 – nichu09

+0

@ nixen09完成。在那裏添加了一個答案 – ryadavilli

+0

嗨.. @ ryadavilli..can你看看這個問題..?http://stackoverflow.com/questions/14495569/how-to-hardcode-namespace-in-xml-in-silverlight – nichu09

0

隨着LinqToXml

var xDoc = XDocument.Parse(mySmlString); 
var names = xDoc.Root.Elements("name").Select(x=> x.Value.Trim()).ToArray(); 
foreach (var name in names) 
{ 
    System.Console.WriteLine(name); 
}