2012-02-24 22 views
4

C#ASP.NETでXMLドキュメントを解析しています。タグ「コース」のすべての要素を取得する方法や機能がわかりませんか?特定の種類のすべてのXML要素を取得:ネストされた要素も含めて

XMLの形式はとても似ている:私は戻ってない「コース」の要素を取得していない、次のコードを実行すると

<a> 
    <g1> 
    <course></course> 
    <g9> 
     <course></course> 
     ... more course elements 
    </g9> 
    <course></course> 
    <g2> 
     <g3> 
     <course></course> 
     ... 
     </g3> 
    </g2> 
    </g1> 
</a> 

、一度にすべてのこれらの要素をつかむことができるシンプルな機能がありますか?

XmlDocument xdoc = new XmlDocument(); 
xdoc.Load("http://kjkjkj.com"); 
XmlNodeList list = xdoc.DocumentElement.SelectNodes("course"); 

// if I debug: list.count = 0 but if I look at xdoc.DocumentElement.outerXml 
// its the correct XML so I did parse the file & get XML contents. 

// Is there any C# equivalent of document.getElementsByTagName("course"); ??? 
+0

タイトルに「C#」などのプレフィックスを付けないでください。それがタグのためのものです。 –

答えて

7

あなたは近かった://を頭に付ける

XmlNodeList list = xdoc.DocumentElement.SelectNodes("//course"); 

courseという名前の文書、彼らがどんなにですべてノードをつかむだろう。

代わりに、LinqとXMLを構文解析して、Linqとオブジェクトをうまく統合するXMLを検討する必要があります。同じものと同じ構文があります

var courses = xdoc.Descendants("course"); 
関連する問題