XDocument保存&而不仅仅是&

本文关键字:不仅仅是 amp 保存 XDocument | 更新日期: 2023-09-27 18:17:25

我使用XDocument来切换xml文档中的值。在新值中,我需要使用字符'&' (&)但是在XDocument.save()之后,xml变成了& !

我尝试使用编码和东西…没有工作

XDocument保存&而不仅仅是&

XDocument正在做它应该做的事情。

&是无效的XML。(这是一个未完成的字符/实体引用)

&在XML中意味着"一个实体的开始",所以如果你想包含一个&作为数据,你必须将其表达为一个实体- &(或在CDATA块中使用它)。

你所描述的是正常的行为,否则XML会中断。

有两种选择。要么确保对XML文档中的所有内容进行正确的XML编码/解码。请记住,HTML和XML编码/解码略有不同。

选项二是对xml中可能包含无效元素的任何内容使用base64编码。

您的输出文件app.config应该是XML文件吗?

如果是,则&必须转义为&

如果不是,那么您应该使用文本输出方法而不是xml输出方法:使用<xsl:output method='text'/> .

PS:这个问题似乎是我如何在ASP.net/C#应用配置文件值

中添加与符号的值的副本
相关文章: