1

我想替换 cdata 部分中的文本,但是当我只是尝试向其中添加文本时,我丢失了 CDATA 定义。

我有一个这样的 XML:

<title><![CDATA[string]]></title>

当我尝试使用新值更新此字段时:

myXmlNode.SelectSingleNode("title").InnerText = TextBoxName.Text;

输出是

<title>string</title>    

如何将其保留为 CDATA?

4

2 回答 2

2

标题元素将有一个 CData 子元素,需要像这样进行转换:-

 ((XmlCDataSection)myXmlNode.SelectSingleNode("title").FirstChild).Value = TextBoxName.Text
于 2009-05-22T07:26:57.980 回答
1

我会做:

myXmlNode.SelectSingleNode("title").FirstChild.InnerText = TextBoxName.Text;

这样您就不必在代码中处理 CDATA 格式(编辑:硬编码 <![CDATA[ 无论如何都不起作用,正如 Anthony 所指出的那样)

于 2009-05-22T07:41:20.073 回答