如何在XML中转义此(salt)字符串?

时间:2011-12-20 23:23:35

标签: xml azure escaping

当我收到此错误时,我即将在Windows Azure上部署我的服务:

  

错误:提供的配置文件包含无法解析的XML。 '$'是一个意外的令牌。预期的标记是';'。第14行,第99位。

我的ServiceConfiguration.cscfg文件中包含以下值

<Setting name="AUTH_KEY" value="6v2^mG+$VN`P_9e9KVWkn)}8 Vtdqj?kB7l&kgVcR8i[P/h1dWp9q!(0~ eZ[xTk" />

有没有办法逃脱整个字符串?

或者我可以逃脱罪魁祸首“$”?

4 个答案:

答案 0 :(得分:2)

可以在WikiPedia上找到XML转义字符的完整列表

http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references

答案 1 :(得分:1)

问题不在于$&属性的值为value

"6v2^mG+$VN`P_9e9KVWkn)}8 Vtdqj?kB7l&kgVcR8i[P/h1dWp9q!(0~ eZ[xTk"

将其转移到&amp;并且您应该没问题:

"6v2^mG+$VN`P_9e9KVWkn)}8 Vtdqj?kB7l&amp;kgVcR8i[P/h1dWp9q!(0~ eZ[xTk"

答案 2 :(得分:1)

避免.csfg文件中XML编码问题的最简单方法是,如果您通过角色的属性编辑值(双击它,或右键单击 - &gt;属性)。当您在设置标签中更改值时,它会为您处理编码。

答案 3 :(得分:0)

问题不在于“$”。 XMLSpy说:

File Untitled1.xml is not well-formed.
Character '[' is grammatically unexpected
    Reason: one of the following is expected (see below)
        ';'
    Details
        XML production: Production 'EntityRef' not satisfied

您需要将“&”转义为“&amp;”。