在 C# 中的 app.config 文件中存储 < 和 > 字符时出错
Posted
技术标签:
【中文标题】在 C# 中的 app.config 文件中存储 < 和 > 字符时出错【英文标题】:error storing < and > characters in app.config file in C# 【发布时间】:2012-08-21 23:59:56 【问题描述】:我想在具有 的 app.config 文件中存储一个 sql 查询 字符,但文件显示错误 'expecting >' , 你遇到过这个问题吗?
【问题讨论】:
@ChrisBrint 如果我希望在启动应用程序之后更改该查询。 【参考方案1】:只需将 &lt;
和 >
更改为 &lt;
和 &gt;.
【讨论】:
【参考方案2】:如果您确实需要将该查询放在 app.config 中,您可以将其放在 CDATA 部分中,或者您可以使用 &lt;
和 &gt;
转义这些字符
【讨论】:
【参考方案3】:首先,如果您将 SQL 存储在 app.config 中,您可能做错了什么。正如@ChrisBint 所说,您可能应该将其放在嵌入式资源文件中。
话虽如此,您应该能够通过用适当的实体替换任何特殊字符来纠正问题:
< ... <
> ... >
" ... "
【讨论】:
【参考方案4】:将 SQL 存储在资源文件而不是 app.config 中。
【讨论】:
【参考方案5】:(大于字符)使用“>”
必须用于属性值,但 > 可以作为元素的内容,只要
必须用于属性值,但不跟在它后面。
来源 - http://msdn.microsoft.com/en-us/library/ms748250.aspx
【讨论】:
【参考方案6】:您必须使用 XML 编码字符。 &lt;
和 &gt;
分别对应 <
和 >
这应该确保在 xml 中正确处理任何特殊字符并按预期返回
【讨论】:
以上是关于在 C# 中的 app.config 文件中存储 < 和 > 字符时出错的主要内容,如果未能解决你的问题,请参考以下文章
在 C# 运行时读取、写入和更新 app.config 文件中的连接字符串
从 c# 中的 app.config 获取 ConnectionString [重复]