1

次の XML があります。

<projects>
    <project>
        <name>Super 1</name>
        <types>
            <type>Art</type>
            <type>Retro</type>
        </types>
    </project>
    <project>
        <name>Super 2</name>
        <types>
            <type>Retro</type>
        </types>
    </project>
</projects>

メソッドを実装する必要がありSelectProjectsOfType(string type)ます。コレクション内の内部の1 つとしてリストされている特定の型を持つすべて<project>のを返す必要があります。そのため、最初に各要素のタイプを分析し、次に検索対象のタイプが存在する場合はプロジェクト ノード全体を選択する必要があります。LINQを使用してこれをエレガントに行うにはどうすればよいですか?XElement<type><types>

4

1 に答える 1

0
XElement projects = ...;
string searchTerm = "some-type-of-project";

var result = projects.Descendents("project").Where(
  p => p.Descendents("type").Any(t => t.Value == searchTerm)
);
于 2012-06-08T13:45:25.730 に答える