试图将CData元素添加到XMLDocument是行不通的,为什么?

时间:2017-08-17 11:11:07

标签: c# xml web-services cdata

我已经创建了一个XMLDocument,我正在尝试添加一个CData-Section。

e = doc.CreateElement("PSContent", NS);
ps.AppendChild(e);
XmlCDataSection cdata = doc.CreateCDataSection(next.getContent());
e.AppendChild(cdata);

但最终结果总是如此:

<PSContent>Testcontent</PSContent>

如您所见,它缺少CDATA标签。它应该是这样的:

<PSContent><![CDATA[Testcontent]]></PSContent>

你能帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

在将 e 附加到 ps 之前,您必须将cdata附加到 e

您的代码必须如下所示:

var doc = new XmlDocument();
var psContent= doc.CreateElement("PSContent", "yournamespace");
XmlCDataSection cdata = doc.CreateCDataSection("yourtext");
psContent.AppendChild(cdata);
doc.AppendChild(psContent);

希望这个帮助