【发布时间】:2008-10-27 10:13:27
【问题描述】:
我想将一个节点内包含许多元素(大约 150 个)的 XML 文档转换为另一个架构略有不同但大部分元素名称相同的 XML 文档。现在我是否必须手动映射两个文档之间的每个元素/节点。为此,我必须对 150 行映射和元素名称进行硬编码。像这样:
XElement newOrder = new XElement("Order");
newOrder.Add(new XElement("OrderId", (string)oldOrder.Element("OrderId")),
newOrder.Add(new XElement("OrderName", (string)oldOrder.Element("OrderName")),
...............
...............
...............and so on
newOrder 文档可能包含额外的节点,如果在 oldOrder 中没有找到它们,这些节点将被设置为 null。那么,除了硬编码 150 个元素名称(如 orderId、orderName 等)之外,我还有其他选择吗……还是有更好的更易于维护的方法?
【问题讨论】: