如何更新 CDATA 中的文本

发布于 2024-07-21 04:32:04 字数 372 浏览 13 评论 0原文

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

我有一个像这样的 XML:

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

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

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

输出是

<title>string</title>    

如何将其保留为 CDATA?

I want to replace text inside cdata section but when I simply trying to add text to it I lose CDATA definition.

I have a XML like this:

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

When I try to update this field with new value:

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

Output is

<title>string</title>    

How do can I keep it as CDATA?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

妄想挽回 2024-07-28 04:32:04

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

 ((XmlCDataSection)myXmlNode.SelectSingleNode("title").FirstChild).Value = TextBoxName.Text

The title element will have an CData child which needs to be cast like so:-

 ((XmlCDataSection)myXmlNode.SelectSingleNode("title").FirstChild).Value = TextBoxName.Text
|煩躁 2024-07-28 04:32:04

我会这样做:

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

这样你就不必在代码中处理 CDATA 格式(编辑:
硬编码

I would do:

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

That way you don't have to deal with the CDATA format in your code (edit:
hard-coding <![CDATA[ doesn't work anyway, as pointed out by Anthony)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文