Ну, вы на самом деле хотите всех потомков или только элементы верхнего уровня? Если вам нужны только элементы верхнего уровня, используйте метод Elements()
, который возвращает все элементы непосредственно под текущим узлом.
Проблема не в том, что узлы повторяются, а в том, что узлы более высокого уровня включают узлы более низкого уровня. Таким образом, возвращается узел более высокого уровня, затем узел более низкого уровня, и вы записываете целое обоих этих узлов, что означает, что вы записываете узел нижнего уровня дважды .
Если вы просто напишите, скажем, имя узла, на который вы смотрите, вы не увидите проблемы. Но вы не сказали, что вы действительно пытаетесь сделать, поэтому я не знаю, помогает ли это ...