通过System.Xml.XmlWriter取消隐藏角括号

时间:2008-09-15 20:13:41

标签: c# .net xml

我正在通过System.Xml.XmlWriter编写一个包含一些XML的字符串。我坚持使用WriteString(),并从文档:

  

WriteString执行以下操作:   字符&,<和>分别用& amp;,& lt;和& gt;替换。

我希望停止,但我似乎无法找到任何XmlWriterSettings属性来控制此行为。有什么办法吗?谢谢!

大卫

3 个答案:

答案 0 :(得分:1)

尝试在CDATA标记之间包装您的真实内容:

<![CDATA [这是我的内容]]>

答案 1 :(得分:1)

WriteString将您的内容写为文字,&,<和>在XML文本中是非法的,因此它们被转义。

如果另一端没有取消它们,那就是问题所在。

如果要编写非转义XML,请使用WriteRaw。

答案 2 :(得分:0)

  

我坚持使用WriteString(),

我认为这是你问题的根源。你能解释一下你使用WriteString的原因吗?我的直觉是你正在使用错误的方法来做你想做的事情