我有一个像这样的xml:
<Equipment>
<ModificationDate>
<Data>
</Data>
</ModificationDate>
</Equipment>
我需要将此序列添加到数据节点:
<Table>
<Name />
<Value />
<Number />
</Table>
问题是我需要在Data节点中添加许多Table节点。如果iot只有一个我现在就完成了它。
每当我尝试添加1个表节点及其元素时,我会正确地执行第一个节点,但是当我尝试对较新的节点执行相同操作时,我会创建表节点,但其元素都会转到第一个表节点,其他人空着。
这就是为什么我想知道这里是否有人知道如何添加新的Table节点并使用Tabel索引添加元素。
或者任何其他方式,我需要做的就是将元素添加到我想要的特定表节点,请记住它们都是相同的结构并保持相同的名称。
我搜索了高低,但没有得到答案
修改
我会试着更好地解释一下。我有第一个xml,我需要将第二个结构添加到数据字段。问题是第二个结构将在Data内部重复约500次。
我可以添加那500个表...但是当我尝试将每个数字/值/名称添加到其相应的表时,它不起作用。我只能在创建的第一个表中添加数字/值/名称。这就是为什么,在某种程度上我需要单独访问每个表并向其添加元素,因此它将保留该结构。最终的xml看起来应该是这样的:
<Equipment>
<ModificationDate>
<Data>
<Table>
<Name />
<Value />
<Number />
</Table>
<Table>
<Name />
<Value />
<Number />
</Table>
<Table>
<Name />
<Value />
<Number />
</Table>
</Data>
</ModificationDate>
</Equipment>
但最终看起来像这样:
<Equipment>
<ModificationDate>
<Data>
<Table>
<Name />
<Value />
<Number />
<Name />
<Value />
<Number />
<Name />
<Value />
<Number />
</Table>
<Table />
<Table />
</Data>
</ModificationDate>
</Equipment>
请帮帮我。
答案 0 :(得分:3)
它不是完全清除您需要的内容,但您始终可以使用它来通过索引获取表元素:
var table = doc.Root // Equipment
.Element("ModificationData") // ModificationData
.Element("Data") // Data
.Elements("Table")
.ElementAt(index);
// Now add to that element
另一方面,如果您为每个名称/值/数字添加一个新的表节点,我不明白为什么您需要通过索引访问它们...