Linq to xml修改CDATA节点值
增加节点时,我们是这样写的:
xop.Document.Element("messages").Add( new XElement("message", new XAttribute("event", model.EventType), new XElement("subject", model.Subject), new XElement("body", new XCData(model.Body))));
更新节点,如果这样写就会报错: LINQ XObject 不能用作值。
element.SetElementValue("body", new XCData(model.Body));
改成ReplaceWith就OK了:
element.Element("body").ReplaceWith(new XElement("body", new XCData(model.Body)));