我試圖根據其name
屬性刪除XDocument
中的CreditCard
節點doc
,但其未按預期工作。問題根據其屬性刪除XDocument節點
doc
是我XDocument
,它看起來像這樣:
XDocument doc = new XDocument(
new XComment("XML test file"),
new XElement("CreditCards",
new XElement("CreditCard",
new XAttribute("Name", "TestCard1"),
new XAttribute("phoneNumber", 121212142121)),
new XElement("CreditCard",
new XAttribute("Name", "TestCard2"),
new XAttribute("phoneNumber", 6541465561)),
new XElement("CreditCard",
new XAttribute("Name", "TestCard3"),
new XAttribute("phoneNumber", 445588))
)
);
這是我嘗試運行查詢,但它不會刪除該節點。 name
是一個字符串我通過這個功能作爲參考來告訴它刪除
var q = from node in doc.Descendants("CreditCards")
let attr = node.Attribute("name")
where attr != null && attr.Value == name
select node;
q.ToList().ForEach(x => x.Remove());
我不同意這個得到任何錯誤,但沒有要麼刪除。
我壞的XDocument是錯了,我編輯它代表了什麼現在進出口工作。這是舊版本。我用屬性替換CreditCard中的元素 – 2013-03-25 10:41:11
它的工作,我只是將元素更改爲屬性,您的答案正在工作。謝謝 – 2013-03-25 10:49:46