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

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

關于配置文件權衡,.config VS .xml

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

關于配置文件權衡,.config VS .xml

眾所周知,程序的靈活性有一部分就是“配”出來了。

當然,config文件從來就沒有讓.NET的同學輕松過,至少,我覺得很麻煩。

1.config

.NET的配置文件方便,其實最方便的是appSettings

<appSettings>    <add key="apiKey" value = "8asdf9as9d2asd" /></appSettings>

而自定義配置比較繁瑣,要熟悉.NET的配置文件體系,才能了然于胸。

當然,奉獻精神的人們提供了一個DSL杰作——ConfigurationSectionDesigner。

從某種程度上來說,我對.NET的自定義配置是矛盾的:

我喜歡它,因為嚴格,不可修改;

我不喜歡它,往往修改設計的時候,就比較麻煩,要該好多引用。

2.XML

XML很靈活,但我又懼怕其復雜的API,截止到使用Linq To Xml之前,我都一直抱著這種態度。

甚至多次想寫一個XMLHelper,結果每次看到一堆的定義和API,就傻了。

這里,是Linq To Xml讓我改變了對XML的態度。

主要API:

1)加載一個文檔;

XDocument  doc = XDocument .Load(path);或XElement  doc = XElement .Load(path);

區別就是,XElement加載之后,當做一個元素;而XDocument(當做一個文檔)有一個典型的屬性——Root。

2)查找元素;

提供了良好的樹形API,給人很清晰的感覺。

doc.Elements("yourName") ;    //查找元素集合doc.Element("yourName") ;    //查找單個元素doc.Descendants("yourName");   //查找子孫元素

當然,后面加上Linq的擴展,Where,Select等Lambda方式,是很自然的事情。

3)修改元素,增加元素,刪除元素;

SetValue,Add,AddAfterSelf,AddBeforeSelf

RemoveAll

XElement root = new XElement("Categories",        new XElement("Category",            new XAttribute("CategoryID", "1"),            new XElement("CategoryName", "Beverages"),            new XElement("Descr

xml文件的讀寫是如此地方便。

3.選擇

總體上來說,XML比config文件更加靈活。

在config應對各種復雜配置無力(修改代碼很無奈)時,我傾向于使用XML進行配置;

在配置很固定時,很簡單時,我很傾向使用config進行配置。

使用XML文件時,有個VS小提示——選中XML文件,右鍵,屬性,輸出目錄,選擇“始終復制”。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴和县| 古交市| 兴业县| 侯马市| 富宁县| 德阳市| 文昌市| 万载县| 息烽县| 凤翔县| 始兴县| 佛山市| 郎溪县| 凤城市| 兰州市| 镇远县| 昌邑市| 宁德市| 石家庄市| 台东县| 灵川县| 积石山| 若尔盖县| 壶关县| 北宁市| 视频| 英超| 都匀市| 西华县| 攀枝花市| 曲水县| 德江县| 汶川县| 太湖县| 务川| 苏尼特右旗| 沾益县| 周宁县| 开鲁县| 桐乡市| 饶河县|