上一篇博文中,老周所介紹的自行編寫(xiě)的配置類(lèi),雖然能夠很好地做封裝,但它僅允許修改用戶級(jí)別的配置,所以文件都是保存到用戶配置目錄下的??墒牵S多情況下,我們還是不考慮用戶隔離,而是能夠直接修改與應(yīng)用程序同目錄的App.config文件。
那么,能不能在代碼文件中編輯 app.config 文件呢?當(dāng)然是可以的。其實(shí),配置文件本質(zhì)上是個(gè)XML文檔,所以,你是可以使用普通XML文件的編輯方式來(lái)修改的。但.net類(lèi)庫(kù)還是提供有于讀寫(xiě)配置文件的專(zhuān)用API,使用專(zhuān)用的API,使得生成的配置比較規(guī)范。
.net 的配置文件是由N個(gè)配置節(jié)組成,每個(gè)配置節(jié)面向不同的功能,比如 startup 可以配置程序所需要的.net 框架版本。為了便于管理,通常,咱們的應(yīng)用程序設(shè)置都會(huì)放到 AppSettings 節(jié)上,XML節(jié)點(diǎn)為 appSettings。每一條配置都比較簡(jiǎn)單,就是由 key 和 value 組成。
要對(duì)配置文件進(jìn)行操作,你記得要引用 System.Configuration.dll 程序集,因?yàn)镾ystem程序集只包含一些常規(guī)的類(lèi)型,而專(zhuān)用于讀寫(xiě)配置文件的類(lèi)型都會(huì)包裝到 System.Configuration 程序集中。這些API既適用于app.config,也適用于web.config文件。
好,上面這幾段廢話只要你看懂了,那么下面我們就可以開(kāi)始干活了。放心,很簡(jiǎn)單的,老周給你分享的東西,向來(lái)都是簡(jiǎn)單且有實(shí)用價(jià)值的。
首先,老周介紹一下大概的類(lèi)型使用過(guò)程。
讀——讀取 app.config 文件中 appSettings 節(jié)中的內(nèi)容很簡(jiǎn)單,使用 ConfigurationManager 類(lèi),它公開(kāi)了兩個(gè)靜態(tài)屬性,別小看它們,有了這兩個(gè)屬性,讀取配置會(huì)輕松很多。ConnectionStrings:做過(guò)數(shù)據(jù)庫(kù)連接的話,你肯定很熟悉它的,這個(gè)節(jié)點(diǎn)下專(zhuān)門(mén)存放連接字符串;AppSettings:這個(gè)專(zhuān)門(mén)訪問(wèn) appSettings 節(jié)點(diǎn)下的內(nèi)容,表示形式很簡(jiǎn)潔,就是key - value 對(duì),而且都是字符串類(lèi)型。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26