保留字符串的Xml编码字符

时间:2013-04-01 22:25:47

标签: c# linq-to-xml

我需要更新XML文档;使用C#,最好使用Linq To Xml。源XML文件具有以下节点:

<characters>Lorem &#xD;Ipsum</characters>

我需要将此节点更新为以下内容:

<characters>Lorem1 &#xD;Ipsum2</characters>

当我从Xml中读取字符串时;我明白了:

"Lorem &#xD;Ipsum"

当我使用

编写字符串时
copyEl.SetElementValue(ns + "characters", "Lorem1 &#xD;Ipsum2");

输出的Xml具有重新转义的编码字符的前导&符号:

 <characters>Lorem1 &amp;#xD;Ipsum2</characters>

我想保留原始字符串中的Xml编码;但我不确定如何做到这一点。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

使用Linq-to-XML或任何xml抽象类的美妙之处在于,您无需担心字符串编码。只需将字符串作为C#字符串传入,然后让linq将其转换为XML字符串:

copyEl.SetElementValue(ns + "characters", "Lorem1 \rIpsum2");

答案 1 :(得分:0)