在XML CDATA中读取和操作HTML

时间:2012-05-22 16:14:57

标签: c# xml cdata

当我从XML CDATA部分抓取HTML时,操纵它(在我的例子中,在CDATA部分的文本上执行C#字符串方法),然后显示编辑的版本...它会自动注释掉我的第一个HTML标记:

<![CDATA[ <p>Lorem ipsum dolor sit amet...</p> ]]>

在页面上转换为:

<!--[CDATA[ <p--> Lorem ipsum dolor sit amet... ]]>

打破第一段的样式并在内容后面呈现结束CDATA标记。<​​/ p>

我该如何解决这个问题?

修改 我找不到任何关于此的内容,所以我尝试了一些针对poos和giggles的东西,这很有效:

<![CDATA]> <p>Lorem ipsum dolor sit amet...</p> </]]>

在页面上转换为此内容:

<!--[CDATA]--> <p>Lorem ipsum dolor sit amet...</p> <!--]]-->

然而......我不确定这是否会以负面方式影响我的页面?

还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

在包含CDATA的XML元素上使用XmlNode.InnerXml时,它会注释掉第一个元素。

使用XmlNode.InnerText,CDATA即可使用。

如果您必须使用InnerXml ...您可以省略CDATA标签,它也可以使用。

如果您需要 InnerXml和CDATA,我没有答案......或两者将一起使用的情况