App.config:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup> <connectionStrings> <add name="DBconnString" connectionString="Data Source=.;Initial Catalog=MyTest123456;User ID=sa;PassWord=123&456"/> </connectionStrings> </configuration>
由于数据库连接的密码中含有特殊字符"&",编译时出现如下如下错误信息:
显然,编译器不认识"&456",怎么解决呢,总不能更换密码吧?
事实上App.config是xml文件,在xml文件中特殊字符要进行HTML转义。
HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用。这些符号是不显示在我们最终看到的网页里的,那如果我们希望在网页中显示这些符号,就要用到HTML转义字符串(Escape Sequence)了。
另外,C#的代码注释也同样是XML文件,所以遇到特殊字符可以使用相同的方式显示特殊字符。
代码注释参考文档:C# 代码注释规范文档
HTML特殊转义字符列表
显示 | 说明 | 实体名称 | 实体编号 |
空格 | |   | |
< | 小于 | < | < |
> | 大于 | > | > |
& | &符号 | & | & |
" | 双引号 | " | " |
© | 版权 | © | © |
® | 已注册商标 | ® | ® |
™ | 商标(美国) | ™ | ™ |
× | 乘号 | × | × |
÷ | 除号 | ÷ | ÷ |
所以只要把"&"进行转义就可以了,将PassWord改为 :PassWord=123&456" ,成功通过编译。
另外,中方法的注释说明,可以使用 “实体编号” 对应的字符就可以了,例如如下代码:
出处:http://www.cnblogs.com/songxingzhu/p/4332165.html