1

ほぼ同じ名前でやりたいことをほぼ正確に実行する質問がありますが、 XMLDOMがどのようになるかは事前にわかりません。

私はこのようなことをしたいと思います:

private static IEnumerable<XElement> FindAllContainers(XDocument xml)
{
          IEnumerable<XElement> query = from XElement outer in xml.Root.Elements()
                                        from XElement node in outer.Elements()
                                        where true //Enum.IsDefined(typeof(Role), GetContainerRole(node)) 
                                        select node;
                                        return query;
}

基本的な考え方は、特定のXML構造のすべてのXElementの列挙に対してクエリを実行することです。上記のコードは結果を返しません。ネストされた大きなXML構造を含み、XDocumentであるxmlを使用します。もう1つの質問は、要素にタグ名を手動で提供します。メソッドで静的に設定するために、事前に何が行われているのかわかりません。

4

1 に答える 1

6

したがって、ドキュメント内のすべての要素を列挙したいだけのように思えます。ここでは複雑なことは何もありません。Descendants()メソッドを(引数なしで)呼び出すだけで、ドキュメント内のすべての要素が返されます。

private static IEnumerable<XElement> FindAllContainers(XDocument doc)
{
    return doc.Descendants();
}
于 2012-04-20T16:00:12.847 に答える