将Ampersand添加到XmlElement

Kri*_*ris 2 c# xml

我正在创建一个更大的XML文档中使用的几个XmlElements.

XmlElement thisElement = xmlSearchParameters.CreateElement("value");
thisElement.InnerXml = this.searchParameters[key];
Run Code Online (Sandbox Code Playgroud)

这适用于大多数情况,但如果searchParameters [key]的值恰好包含&符号,则会出现以下两个错误之一:

发生了意外的文件结束.第1行,第1位. - 如果值仅为&

解析EntityName时发生错误.第1行,第7行. - 如果值包含&与其他文本混合.

在XmlElement中包含&和任何其他特殊符号的首选方法是什么?我怀疑必须有一个更好的方法,而不仅仅是替换和其他东西(某种XmlFormat方法???).

Pav*_*aev 8

你为什么一开始使用InnerXml?如果您在未解析的字符串形式中有一些有效的标记,并且想要将其插入那里,则应该使用它.对于纯文本,请使用InnerText:

thisElement.InnerText = this.searchParameters[key];
Run Code Online (Sandbox Code Playgroud)