【发布时间】:2017-03-14 17:51:17
【问题描述】:
这个问题与this one 非常相似,但略有不同。
我正在尝试根据每个对象允许的标记元素数将表示 xml 的对象拆分为多个 xml 对象。我正在努力寻找最好的方法来解决这个问题。对此的任何帮助都会很棒...关于我正在尝试做的示例示例...
xml 源代码表示:
<?xml version="1.0" encoding="utf-8"?>
<DocType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pmlcore="urn:autoid:specification:interchange:xml:schema:1">
<id>tbd</id>
<Observation>
<Command>c1</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
<Observation>
<Command>c2</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
</DocType>
鉴于每个文档允许的“Tag”元素数量为 ... 3
xml 1:
<?xml version="1.0" encoding="utf-8"?>
<DocType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pmlcore="urn:autoid:specification:interchange:xml:schema:1">
<id>tbd</id>
<Observation>
<Command>c1</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
</DocType>
xml 2:
<?xml version="1.0" encoding="utf-8"?>
<DocType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pmlcore="urn:autoid:specification:interchange:xml:schema:1">
<id>tbd</id>
<Observation>
<Command>c1</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
<Observation>
<Command>c2</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
</DocType>
我相信您现在已经知道要求是什么,但我会继续:
xml 3:
<?xml version="1.0" encoding="utf-8"?>
<DocType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pmlcore="urn:autoid:specification:interchange:xml:schema:1">
<id>tbd</id>
<Observation>
<Command>c2</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
</DocType>
xml 4:
<?xml version="1.0" encoding="utf-8"?>
<DocType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pmlcore="urn:autoid:specification:interchange:xml:schema:1">
<id>tbd</id>
<Observation>
<Command>c2</Command>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Tag>
<id>....</id>
<Data>...</Data>
</Tag>
<Data>...</Data>
</Observation>
</DocType>
【问题讨论】:
-
我真的不明白你在问什么。您提到您希望输出最多三个元素,但源只有两个,而您正在输出一个。
-
@JCabello 我已经编辑了问题以消除误解,希望现在清楚
标签: c# .net xml xml-parsing linq-to-xml