眾所周知,程序的靈活性有一部分就是“配”出來了。
當然,config文件從來就沒有讓.NET的同學輕松過,至少,我覺得很麻煩。
.NET的配置文件方便,其實最方便的是appSettings
<appSettings> <add key="apiKey" value = "8asdf9as9d2asd" /> </appSettings>
而自定義配置比較繁瑣,要熟悉.NET的配置文件體系,才能了然於胸。
當然,奉獻精神的人們提供了一個DSL傑作——ConfigurationSectionDesigner。
從某種程度上來說,我對.NET的自定義配置是矛盾的:
我喜歡它,因為嚴格,不可修改;
我不喜歡它,往往修改設計的時候,就比較麻煩,要該好多引用。
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("Description", "Soft drinks, coffees, teas, beers, and ales") ) ); root.Element("Category").Add(new XAttribute("AddDate", DateTime.Now.ToShortDateString())); root.Save(path);
xml文件的讀寫是如此地方便。
總體上來說,XML比config文件更加靈活。
在config應對各種復雜配置無力(修改代碼很無奈)時,我傾向於使用XML進行配置;
在配置很固定時,很簡單時,我很傾向使用config進行配置。
使用XML文件時,有個VS小提示——選中XML文件,右鍵,屬性,輸出目錄,選擇“始終復制”。
app.config文件為應用程序的配置文件,操作此文件並不能按操作一般的XML文件那樣,而是需要C#提供的關於操作配置文件的類庫Configuration來操作.另外還要添加此應用(System.Configuration)才行:在vs右邊的文件列表裡解決方案上右擊,選中添加引用,在彈出的對話框裡選中System.Configuration添加即可.對於配置文件的修改,有些麻煩.下面的代碼希望能給你一點幫助: Configuration config=ConfigurationManager.OpenExeConfiguration("D:\\yeyun\\MyQQ\\MyQQ\\app.config");
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings["key"] == null)
{
appSetting.Settings.Add("key", "net.tcp://192.168.1.101:1234");
}
else
{
appSetting.Settings["key"].Value = "hao";
}
ConnectionStringsSection conns = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (conns.ConnectionStrings["name"] == null)
{
ConnectionStringSettings conn = new ConnectionStringSettings("name","dddd");
conns.ConnectionStrings.Add(conn);
}
config.Save();
上面分別是修改appSettings節點和connectionStrings節點
但是我沒有找到system.serviceModel這個節點,我用的是vs2005。不知道你用的是什麼版本
注:該配置文件不建議在程序運行時修改...
都在struts-blank.war裡面
用winrar解壓縮,得到一個空的web項目應用
這裡面所有的文檔都是空的
包括你需要的web.xml和struts-config.xml
如果找不到也許是你的struts包有問題,因為有些包裡面都是源代碼,我剛開始的時候不知道,在apache網站上下載了一個struts1.2.7的包,就是源碼的
至於你說的Configuring Applications
我也不懂,等待高人