Я полагаю, что я раздвигаю границы возможностей LINQ to XML, но я бы хотел выбрать группу элементов, которые содержат значения, которые соответствуют значению, содержащемуся в другом узле элемента.
В приведенном ниже XML-коде я хочу выбрать только элементы «Option», содержащие значения, которые также содержатся в элементе AvailableOptions »для конкретного идентификатора продукта.
Что-то вроде следующего псевдокода:
Выберите все параметры, если указано имя параметра (выберите AvailableOptions, где ProductID = "xxx")
<Agents>
<Agent ID="1">
<Login>111</Login>
<Password>pass</Password>
<Products>
<Product ID="xxx">
<AvaiableOptions>aaa,bbb</AvaiableOptions>
</Product>
</Products>
<Products>
<Product ID="yyy">
<AvaiableOptions>bbb,ccc</AvaiableOptions>
</Product>
</Products>
<Products>
<Product ID="zzz">
<AvaiableOptions>aaa,ccc</AvaiableOptions>
</Product>
</Products>
<Options>
<Option>
<Name>aaa</Name>
<Value>10</Value>
</Option>
<Option>
<Name>bbb</Name>
<Value>20</Value>
</Option>
<Option>
<Name>ccc</Name>
<Value>30</Value>
</Option>
</Options>
</Agent>