Linq到XML,强制在已经存在的标记之间使用结束标记和开始标记
例如,有一个标签Linq到XML,强制在已经存在的标记之间使用结束标记和开始标记,xml,linq,Xml,Linq,例如,有一个标签 <book> <firstHalf> </firstHalf> <secondHalf> </second half> </book> 我的要求是我需要将上半场和下半场分开,如下所示 <book> <firstHalf> </firstHalf> </book> <book> <secondHalf> </seco
<book>
<firstHalf> </firstHalf>
<secondHalf> </second half>
</book>
我的要求是我需要将上半场和下半场分开,如下所示
<book>
<firstHalf> </firstHalf>
</book>
<book>
<secondHalf> </second half>
</book>
所以首先我需要添加一个新的结束书标签,然后是开始书标签!p-使用linq
我不知道怎么做,任何帮助都将不胜感激 var xmlStr=@”
";
var doc=XDocument.Parse(xmlStr);
//找到所有的书
var books=doc.substands(“book”).ToList();
//另外,需要ToList()因为我们正在修改结构
foreach(账簿中的var账簿)
{
//获取所有“额外”元素
var extralelements=book.Elements().Skip(1.ToList();
if(extralelements.Any())
{
//从当前书本中删除额外的元素
extraElements.Remove();
//使用额外元素在此书之后创建新书
AddAfterSelf(extralelements.Select(e=>newxelement(“book”,e)));
}
}
收益率:
它不是有效的XML。
secondHalf
应该是secondHalf