国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

加密配置文件(App.Config和Web.config)中connectionStrings通用方法

2019-11-17 02:24:56
字體:
來源:轉載
供稿:網友

加密配置文件(App.Config和Web.config)中connectionStrings通用方法

Posted on 2015-04-29 17:20 Charles Chen 閱讀(...) 評論(...) 編輯 收藏

1、 背景:根據項目的要求,需要對配置文件配置的數據庫連接字符串進行加密,也就是對ConnectinString節點的內容進行加密存儲,同時考慮到代碼使用連接字符串不需要進行更改,C#會自動對加密的內容進行解密。

2、需求:因此考慮單獨開發一個winform程序,對配置文件進行加密和解密,通過ConfigurationManager中的OpenMappedExeConfiguration方法創建一個Configuration對象,然后在對這個對象中的指定節點進行操作。

遇到的問題:

ConfigurationManager.OpenExeConfiguration("C:/Charles2008.config");

這個方法在當前的目錄下產生一個副本("C:/Charles2008.config.config"),而且返回的Configuration對象操作的不是Charles2008.config文件,而是程序自動創建的Charles2008.config.config文件,然而如果我把文件Charles2008.config更名為Charles2008.config.config文件或者刪除Charles2008.config文件卻提示:

加載配置文件時出錯:參數“exePath”無效。參數名:exePath

3、解決方法:從網上尋找幫助,發現還真的有和我遇到一模一樣的問題,只需要在以上的代碼進行稍微一點改動即可,改動后不生成文件副本,直接操作文件,更新也是操作此文件。

//先實例化一個ExeConfigurationFileMap對象,把物理地址賦值到它的ExeConfigFilename屬性中;ExeConfigurationFileMapfileMap=newExeConfigurationFileMap();fileMap.ExeConfigFilename=@"C:/Charles2008.config";//再調用fileMap實例化config,這樣,操作的文件就是Charles2008.config文件了,也不會產生副本文件Configurationconfig=ConfigurationManager.OpenMappedExeConfiguration(fileMap,ConfigurationUserLevel.None);

4、加密連接字符串:上面技術難點解決后,根據獲取到Configuration對象Config調用以下方法即可對連接字符串進行加密。(僅針對ConectionString節點)

ConfigurationSectionconnectionSection=config.GetSection("connectionStrings");if(connectionSection!=null){connectionSection.SectionInformation.5、備注

加密和解密在同一臺計算機上使用,在加密過程中,使用了一個基于本機的密鑰。這就意味著加密和解密必須在同一臺計算機上進行,否則將不能解密。同時,在一臺計算機上加密的配置,在另一臺計算機上將不能正常使用。

連接字符串加密工具


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 故城县| 宁蒗| 五寨县| 清涧县| 清流县| 济源市| 梁山县| 奉节县| 大足县| 绵阳市| 托克逊县| 都兰县| 维西| 许昌市| 辉南县| 临海市| 商都县| 赤峰市| 苗栗县| 宜州市| 蒙阴县| 南投市| 嘉祥县| 开鲁县| 万山特区| 广州市| 吴旗县| 金昌市| 沁水县| 清水河县| 祁门县| 慈溪市| 丽水市| 视频| 昌黎县| 泸定县| 左云县| 赣州市| 自贡市| 景宁| 井陉县|