如何从xml“Tickets”中删除父标记,其余节点应该在那里
<Tickets>
<Extract_Date>2011-02-25 00:00:00</Extract_Date>
<Ticket>
<Ticket_Number>INC000000578057</Ticket_Number>
<Status>
<Value>Cancelled</Value>
<Reason>Cancelled by user</Reason>
</Status>
</Ticket>
</Tickets>
答案 0 :(得分:3)
.Elements()
的{{1}}方法会返回该元素的所有子元素。
XElement
当然,当你可以直接调用IEnumerable<XElement> GetElementsWithoutParent(XElement element)
{
return element.Elements();
}
方法时,这样的方法会很愚蠢,但它说明了这一点。
请注意,您不再拥有.Elements()
,而是XElement
集合。只需调用XElement
,就无法再获得XML表示。要获取XML,您需要使用.ToString()
并附加每个元素。并且它不能代表没有根节点的XML文档。
答案 1 :(得分:2)
希望序列化其他节点并将其保存到DB,同时反序列化动态添加父
XElement newRoot = ........
newRoot.Add(orgXDoc.Element("Tickets").Elements());