私は次のXML構造を持っています:
<Capabilities>
<Capability ID="1" Name="Capability # 1">
<Relations>
<Relation RelatedTo="2" RelationType="Child"/>
<Relation RelatedTo="3" RelationType="Child"/>
<Relation RelatedTo="4" RelationType="Child"/>
<Relation RelatedTo="5" RelationType="Child"/>
</Relations>
</Capability>
<Capability ID="3" Name="Capability # 3">
<Relations>
<Relation RelatedTo="1" RelationType="Dependant" />
</Relations>
</Capability>
<Capability ID="2" Name="Capability # 2">
<Relations>
<Relation RelatedTo="6" RelationType="Child" />
<Relation RelatedTo="5" RelationType="Child" />
</Relations>
</Capability>
</Capabilities>
そして、値5のRelatedTo属性を持つ子関係を持つすべての機能をクエリする必要があります。これまでに次のクエリを試しましたが、「null参照例外」のコレクションが表示され、その方法がわかりません。やれ。
var result = root.Elements("Capability")
.Where(c => c.Elements("Relations")
.Where(r => r.Attribute("RelatedTo").Value == "5"
&& r.Attribute("").Value == Enum.GetName(typeof(RelationTypes), RelationTypes.Children)).Any());
私が間違っていることや、それを照会する正しい方法についての手がかりはありますか?