这是在使用.net。
中的XDocument时我认为这可能有用......
xElement.Element(elementName).Value = new XCData(value).ToString();
......但它就像这样......
<name><![CDATA[hello world]]></name>
答案 0 :(得分:40)
XCData是一种XNode。因此,您应该尝试将Add添加到元素中,而不是将值(documented设置为元素的展平文本内容):
xElement.Element(elementName).Add(new XCData(value));
答案 1 :(得分:36)
尝试
xElement.Element(elementName).ReplaceNodes(new XCData(value));
答案 2 :(得分:35)
如果您正在创建XElement(而不是修改它),您也可以直接在构造函数中添加它作为内容,如下所示:
new XElement(elementName, new XCData(value));