App.config/Web.config 中特殊字符的处理
我們知道在應用程序中嵌入連接字符串可能導致安全漏洞和維護問題。使用?Ildasm.exe(MSIL 反匯編程序)?工具可以查看編譯到應用程序源代碼中的未加密連接字符串。此外,如果連接字符串發生更改,則必須重新編譯應用程序。因此,強烈建議將連接字符串存儲在應用程序配置文件中。
最近在學習SQL Server時遇到連接字符串包含特殊字符出現編譯錯誤的問題。
App.config:
<?xml version="1.0" encoding="utf-8" ?> <configuration><startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup><connectionStrings><add name="DBconnStr" connectionString="Data Source=.;Initial Catalog=MyTest;User ID=sa;PassWord=123&456"/></connectionStrings> </configuration>由于數據庫連接的密碼中含有特殊字符"&",編譯時出現如下如下錯誤信息:
顯然編譯器不認識"&456",怎么解決呢,總不能更換密碼吧?
事實上App.config是xml文件,在xml文件中特殊字符要進行HTML轉義。
HTML中<,>,&等有特殊含義(<,>,用于鏈接簽,&用于轉義),不能直接使用。這些符號是不顯示在我們最終看到的網頁里的,那如果我們希望在網頁中顯示這些符號,就要用到HTML轉義字符串(Escape Sequence)了
?
HTML特殊轉義字符列表
最常用的字符實體
| 顯示 | 說明 | 實體名稱 | 實體編號 |
| ? | 空格 | |   |
| < | 小于 | < | < |
| > | 大于 | > | > |
| & | &符號 | & | & |
| " | 雙引號 | " | " |
| ? | 版權 | © | © |
| ? | 已注冊商標 | ® | ® |
| ? | 商標(美國) | ? | ™ |
| × | 乘號 | × | × |
| ÷ | 除號 | ÷ | ÷ |
所以只要把"&"進行轉義就可以了,將PassWord改為
PassWord=123&456"
成功通過編譯。
?
http://www.cnblogs.com/fordwayne/p/3200470.html
轉載于:https://www.cnblogs.com/tianciliangen/p/9836491.html
總結
以上是生活随笔為你收集整理的App.config/Web.config 中特殊字符的处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 有在深圳美迪电商学习过美工设计的吗?怎么
- 下一篇: 谜题14:转义字符的溃败