在ASP.NET应用中通常需要将数据库用户名和密码写在web.config中(当然也可以直接编译到dll中,增加安全性,但不够灵活修改数据库或使用数据源控件时会有问题)。在这过程中通常会遇到这样一个问题:明明用户明和密码都正确,但数据库却始终无法连接。这是因为数据库密码通常会出现特殊字符像“<”,“>”,“&”等等。这就造成了异常。
解决办法
1.使用"
<![CDATA[" 标记开始,以"
]]>"标记结束,所有在CDATA部件之间的文本都会被解析器忽略。CDATA部件之间不能再包含CDATA部件(不能嵌套)。如果CDATA部件包含了字符"]]>" 或者"<![CDATA[" ,将很有可能出错。
2.使用转义字符
| < |
< |
小于号 |
| > |
> |
大于号 |
| & |
& |
和 |
| ' |
' |
单引号 |
| " |
" |
双引号 |
不知道特殊字符的转义字符怎么写?不要紧,打开DW或VS等编辑工具,设计视图输入要转义的字符,然后切换到代码视图,这便得到了它们的转义字符。
复制到web.config密码位置,问题解决!