2008年12月14日

XContainer.Descendants メソッド

   このエントリーをはてなブックマークに追加 Clip to Evernote
Descendants()メソッド。

おおっ、こんなメソッドがあったのか?
LINQ to XMLの紹介の記事では、このメソッドが紹介されているのを 見たことなかったので、 今まで存在を知らなかった orz...
確かに、DOMのGetElementsByTagName に該当するメソッドがなかったら、面倒でしかたないですからね。

XDocument xdoc = XDocument.Parse(
    @"<People>
         <Person>
             <Name>坂本竜馬</Name>
             <Age>35</Age>
         </Person>
      </People>");
var q = xdoc.Root.Descendants()
    .Where(e => e.Name == "Age")
    .Select(e => e.Value);
q.ToList().ForEach(Console.WriteLine);

検索対象が子孫要素なので、Age要素を取得できます。


 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/51704185