ASP.NET一个网站内存放多个config文件(Web.Config文件中configSource 的用法
| 每個(gè)網(wǎng)站里都會(huì)有一個(gè)web.config文件。修改Web.config文件會(huì)導(dǎo)致IIS重啟,就是隨意的回車一下也會(huì)導(dǎo)致重啟。微軟建議,不要將需要修改的配置內(nèi)容保存在web.config中。而是單獨(dú)放在一個(gè)config中。但是對(duì)于單獨(dú)存放的config文件,怎么來對(duì)其進(jìn)行修改和讀取呢? 例如 可以指定 web.config 中的 appSetting 單獨(dú)放在 一個(gè) config.config 文件中。通過 configSource 來指定。 一、原來的web.config文件: <?xml version="1.0" encoding="utf-8"?> 二,下面拆分成兩個(gè)config文件 1)第一個(gè)config文件:web.config <?xml version="1.0" encoding="utf-8"?> 2)第二個(gè)config文件:config.config <?xml version="1.0" encoding="utf-8"?> 那么如何讀取呢? Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); 如果用上面這種方法會(huì)報(bào)錯(cuò):CS0122: “System.Configuration.ConfigurationElement.this[System.Configuration.ConfigurationProperty]”不可訪問,因?yàn)樗鼙Wo(hù)級(jí)別限制 Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); 下面是修改: Configuration cfg = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); 總結(jié):經(jīng)過拆分后,修改config.config不會(huì)導(dǎo)致IIS重啟。 說明:我的config.config文件和webconfig在同一級(jí)目錄,另外,我這里叫config.config,你可以隨意改變,比如叫app.config。 注意config.config的寫法。 一旦在web.config中的appSettings節(jié)點(diǎn)中添加configSource,就不能再添加Add節(jié)點(diǎn)了。也就是說你不能在webconfig里放一部分<add>,然后再config.config里在放一部分<add> 修改時(shí),訪問的節(jié)點(diǎn)必須存在否則會(huì)報(bào):未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例。 參考:http://tangzhongxin.blog.163.com/blog/static/8921961201031711174015/ http://bbs.51aspx.com/showtopic-1923.html |
總結(jié)
以上是生活随笔為你收集整理的ASP.NET一个网站内存放多个config文件(Web.Config文件中configSource 的用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 出现在海马#30524;前的c++
- 下一篇: 结合泛型与模板的STL.NET