App.config/Web.config 中特殊字符的处理_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > App.config/Web.config 中特殊字符的处理

App.config/Web.config 中特殊字符的处理

 2013/7/19 14:58:01  Fordwayne  博客园  我要评论(0)
  • 摘要:我们知道在应用程序中嵌入连接字符串可能导致安全漏洞和维护问题。使用Ildasm.exe(MSIL反汇编程序)工具可以查看编译到应用程序源代码中的未加密连接字符串。此外,如果连接字符串发生更改,则必须重新编译应用程序。因此,强烈建议将连接字符串存储在应用程序配置文件中。最近在学习SQLServer时遇到连接字符串包含特殊字符出现编译错误的问题。App.config:1<?xmlversion="1.0"encoding="utf-8"?>2<configuration>
  • 标签:Web APP

我们知道在应用程序中嵌入连接字符串可能导致安全漏洞和维护问题。使用 Ildasm.exe(MSIL 反汇编程序) 工具可以查看编译到应用程序源代码中的未加密连接字符串。此外,如果连接字符串发生更改,则必须重新编译应用程序。因此,强烈建议将连接字符串存储在应用程序配置文件中。

最近在学习SQL Server时遇到连接字符串包含特殊字符出现编译错误的问题。

App.config

 

1 <?xml version="1.0" encoding="utf-8" ?>
2 <configuration>
3     <startup> 
4         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
5     </startup>
6   <connectionStrings>
7     <add name="DBconnStr" connectionString="Data Source=.;Initial Catalog=MyTest;User ID=sa;PassWord=123&456"/>
8   </connectionStrings>
9 </configuration>

 

由于数据库连接的密码中含有特殊字符"&",编译时出现如下如下错误信息:

显然编译器不认识"&456",怎么解决呢,总不能更换密码吧?

事实上App.config是xml文件,在xml文件中特殊字符要进行HTML转义。

HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用。这些符号是不显示在我们最终看到的网页里的,那如果我们希望在网页中显示这些符号,就要用到HTML转义字符串(Escape Sequence)了

 


HTML特殊转义字符列表

最常用的字符实体

显示

说明

实体名称

实体编号

 

空格

&nbsp;

&#160;

<

小于

&lt;

&#60;

>

大于

&gt;

&#62;

&

&符号

&amp;

&#38;

"

双引号

&quot;

&#34;

©

版权

&copy;

&#169;

®

已注册商标

&reg;

&#174;

商标(美国)

&#8482;

×

乘号

&times;

&#215;

÷

除号

&divide;

&#247;

所以只要把"&"进行转义就可以了,将PassWord改为

PassWord=123&amp;456"

成功通过编译。

发表评论
用户名: 匿名