LINQtoXML新手:将节点从一个节点移动到另一个节点我有一个XElement对象,内容如下:我想移动Foo的2和3到ID为“C”的SubSection,结果是:最好的方法是什么?您需要使用以下查询获取Foo第2部分和第3部分:varfoos=fromxeleminroot.Descendants("Foo")wherexelem.Attribute("id").Value=="2"||xelem.Attribute("id").Value=="3"选择xelem;然后迭代该列表并将其从父xelem.Remove()中删除;然后将它们添加到正确的节点:parentElem.Add(xelem);一个查询将获取两个部分,然后删除每个部分并将其添加到树上的正确位置。这是一个完整的解决方案:varfoos=(fromxEleminxDoc.Root.Descendants("Foo")wherexElem.Attribute("id").Value=="2"||xElem.Attribute("id")。值=="3"选择xElem).ToList();varnewParentElem=(fromxEleminxDoc.Root.Descendants("SubSection")wherexElem.Attribute("id").Value=="C"selectxElem).Single();foreach(varxEleminfoos){xElem.Remove();newParentElem.Add(xElem);之后你的xDoc应该有正确的树。以上就是《LINQtoXML新手:将节点从一个节点移动到另一个节点》C#学习教程的全部内容。如果对你有用,需要了解更多C#学习教程,希望大家多加关注——本文来自网络收藏,不代表立场,如涉及侵权,请点击右转联系管理员删除。如需转载请注明出处:
