У меня есть следующий xml:
<Root>
<Result img="1.png" name="a">
<Programs>
<Program name="foo1">
<ProgramID>1</ProgramID>
</Program>
</Programs>
</Result>
<Result img="2.png" name="b">
<Programs>
<Program name="foo1">
<ProgramID>1</ProgramID>
</Program>
<Program name="foo2">
<ProgramID>2</ProgramID>
</Program>
</Programs>
</Result>
<Result img="3.png" name="c">
<Programs>
<Program name="foo1">
<ProgramID>1</ProgramID>
</Program>
</Programs>
</Result>
<Result img="4.png" name="d">
<Programs>
<Program name="foo1">
<ProgramID>1</ProgramID>
</Program>
</Programs>
</Result>
</Root>
Я пытаюсь отфильтровать xml по ProgramID с помощью оператора linq ниже, но я всегда не получаю результатов, когда передаю значение 2, как ни странно, когда я передаюПри значении 1 я получаю ожидаемые результаты, а это все четыре результата.
xOut = New XElement("Root", _
From s In x...<Result> _
Where s.<Programs>.<Program>.<ProgramID>.Value = 2 _
Select s)
Что не так с запросом linq.Почему 1 работает, а 2 - нет?Также хотелось бы, чтобы после фильтрации структура XML сохранялась.