[英]How to delete a child record from xml
我正在嘗試刪除xml中的ChildRecord <cat>
。 沒有任何正常工作。
這是源XML
<Main>
<Student>
<name>paul</name>
</Student>
<cat>
<category>
<id>1</id>
<name>Architecture</name>
</category>
<category>
<id>2</id>
<name>Education</name>
</category>
</cat>
</Main>
我嘗試了這段代碼。 但是沒有用。
XmlDocument xdoc = new XmlDocument();
xdoc.Load(Server.MapPath("main.xml"));
XmlNodeList nodes = xdoc.GetElementsByTagName("cat");
foreach (XmlNode node in nodes)
{
xdoc.RemoveChild(node);
}
我看到的錯誤
{System.ArgumentException:要刪除的節點不是該節點的子節點。
請幫我。
結果XML應該看起來像
<Main>
<Student>
<name>paul</name>
</Student>
</Main>
Linq2Xml會更容易
var xDoc = XDocument.Load(filename);
xDoc.Root.Element("cat").Remove();
xDoc.Save(filename);
PS:名稱空間: System.Xml.Linq
編輯
使用XmlDocument
XmlDocument xdoc = new XmlDocument();
xdoc.Load(Server.MapPath("main.xml"));
XmlNode node = xdoc.GetElementsByTagName("cat")[0];
node.ParentNode.RemoveChild(node);
xdoc.Save(filename);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.