【发布时间】:2016-11-18 09:19:47
【问题描述】:
我有一个这样的 xml:
<xmlRootNode>
<levelOneChildNode>
Some text
<levelTwoChildNode>
<levelThreeChildNode>More text</levelThreeChildNode>
</levelTwoChildNode>
</levelOneChildNode>
</xmlRootNode>
我无法更改 xml 格式,因为我的客户想要这种格式。我应该如何创建和装饰“levelOneChildNode”类以进行正确的序列化?我不能使用 XmlElement 或 XmlAttribute。做到这一点的唯一方法比我想象的是将“一些文本”作为 XmlElement 并制作一个
string.replace("<textNode>", string.empty).replace("</textNode>", string.empty)
使用 de 序列化 xml 删除 de 标签,但这是一个糟糕的解决方案。
任何想法无需手动 xml 操作?
【问题讨论】:
-
你的客户错了。此 XML 无效。
-
@user1681317 除了
levelTwoChildNode的预期关闭标签中的错字之外,还有什么问题? -
xml 元素不能包含文本值和子元素。
-
不,我的错。它可以:)
-
@user1681317 事实上,这种奇怪的 xml 格式通过了 WC3 验证工具。我想和你一样,但我的客户不同意 XD
标签: c# .net xml-serialization