c# - 从一组相似节点中删除一个节点/元素

标签 c# xml removechild

这是我需要做的: 示例 XML(不确定它是否显示在此处)

 <Tags>
 <Tag ID="0" UserTotal="1" AllowMultipleSelect="1">
  <Name>BaseSamples</Name> 
  <Sample ID="546" Count="1">Sample1 </Sample> 
  <Sample ID="135" Count="1">Sample99</Sample> 
  <Sample ID="544" Count="1">Sample2</Sample> 
  <Sample ID="5818" Count="1">Sample45</Sample> 
  </Tag>
  </Tags>

我要删除:

<Sample ID="135" Count="1">Sample99</Sample>

并将 XML 传回:

 <Tags>
 <Tag ID="0" UserTotal="1" AllowMultipleSelect="1">
  <Name>BaseSamples</Name> 
  <Sample ID="546" Count="1">Sample1 </Sample>   
  <Sample ID="544" Count="1">Sample2</Sample> 
  <Sample ID="5818" Count="1">Sample45</Sample> 
  </Tag>
  </Tags>

任何帮助/提示将不胜感激。我将知道传入的样本“ID”属性以及“样本名称”(元素的 CDATA)。

最佳答案

你应该能够在 C# 中做这样的事情

 XmlDocument xmlDoc = new XmlDocument();
 xmlDoc.Load("XMLFile.xml");     
 XmlNode node = xmlDoc.SelectSingleNode("/Tags/Tag/Sample[@ID='135']");
 XmlNode parentNode = node.ParentNode;
 if (node != null) {
   parentNode.RemoveChild(node);
 }
 xmlDoc.Save("NewXMLFileName.xml");

关于c# - 从一组相似节点中删除一个节点/元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3251317/

相关文章:

c# - 将多个数据表链接到同一个数据库表

java - Web 服务响应是 MessageElement?

android.view.InflateException : Binary XML file line #12: Error inflating class <unknown>

iframe - 删除 iframe 时如何触发 onunload 事件?

c# - 在 asp :LinkButton been clicked 时调用 JavaScript 函数

c# - 使用 linq 组合两个对象的更好方法?

xml - 在 xsd 中使用 ="optional"是多余的吗?

javascript - 从id中删除表内容

java - Android Studio AddView TableLayout,必须removeChild错误?

c# - 使用 LINQ 将 List<U> 转换为 List<T>