我有一个 xml 文件,只有特定的节点必须从中删除。节点名称将作为用户的输入给出。如何删除用户请求的特定节点?
<Customers>
<Customer>
<id>michle</id>
<address>newjersy</address>
</Customer>
<Customer>
<id>ann</id>
<address>canada</address>
</Customer>
</Customers>
我试过了
var customer = new XElement("customer",
from o in customers
select
new XElement("id", id),
new XElement("address", address)
);
客户将包含一个新节点
<Customer>
<id>ann</id>
<address>canada</address>
</Customer>
doc.Element("customers").Elements(customer).ToList().Remove();
但这行不通。如何从 xml 中删除元素?
最佳答案
汤姆,
试试这个……
private static void RemoveNode(string sID)
{
XDocument doc = XDocument.Load(@"D:\\Projects\\RemoveNode.xml");
var v = from n in doc.Descendants("Customer")
where n.Element("id").Value == sID
select n;
v.Remove();
doc.Save(@"D:\\Projects\\RemoveNode.xml");
}
当我使用
调用它时,这删除了一个节点RemoveNode("michle");
希望这对您有所帮助。
关于c# - 删除 xml 节点 -Xelement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42196598/