给出以下XML。
<SystemInfo ID="YY" Value="INNE">
<NativeInfo>Data</NativeInfo>
</SystemInfo>
<SystemInfo ID="YY" Value="HUUE">
<NativeInfo>Data</NativeInfo>
</SystemInfo>
我试图做一个简单的任务来获得这个结果:
<SystemInfo ID="YY" Value="INNE">
</SystemInfo>
<SystemInfo ID="YY" Value="HUUE">
</SystemInfo>
欢迎任何想法。尝试了使用Elements(),Descendants()和AncestorsAndSelf()的任何事情,没有运气,我转向社区:)
答案 0 :(得分:1)
假设您可以使用XDocument
XDocument doc =
XDocument.Parse(
@"<Root>
<SystemInfo ID=""YY"" Value=""INNE"">
<NativeInfo>Data</NativeInfo>
</SystemInfo>
<SystemInfo ID=""YY"" Value=""HUUE"">
<NativeInfo>Data</NativeInfo>
</SystemInfo>
</Root>"
);
doc.Descendants("SystemInfo").Elements().Remove();
我添加了一个仅用于测试的根元素。删除后,文档包含新结构,没有删除的子项:
<Root>
<SystemInfo ID="YY" Value="INNE" />
<SystemInfo ID="YY" Value="HUUE" />
</Root>
答案 1 :(得分:0)
试试这个:
var xmlElements = myXmlDocument.Elements("SystemInfo");
xmlElements.ToList().ForEach(x => x.RemoveNodes());
答案 2 :(得分:-1)
您可以尝试以下代码: -
var xDoc = XDocument.Load("XMLFile1.xml");
foreach (var elem in xDoc.Document.Descendants("SystemInfo"))
{
elem.Descendants("NativeInfo").Remove();
}