C# 读写App.config配置文件
一、C#項(xiàng)目中添加App.config配置文件
在控制臺(tái)程序中,默認(rèn)會(huì)有一個(gè)App.config配置文件,如果不小心刪除掉,或者其他程序需要配置文件,可以通過(guò)添加得到。
添加步驟:右鍵項(xiàng)目名稱,選擇“添加”→“添加新建項(xiàng)”,在出現(xiàn)的“添加新項(xiàng)”對(duì)話框中,選擇“添加應(yīng)用程序配置文件”,默認(rèn)的文件名稱為“ App.config ”,單擊“確定”。
二、配置文件格式
新建以后會(huì)得到一個(gè)App.config的文件,雙擊打開(kāi),默認(rèn)如下面XML所示:
1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 <startup> 4 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> 5 </startup> 6 </configuration>
可以對(duì)其添加節(jié)點(diǎn),我們常用的是appSettings節(jié)點(diǎn),appSettings里面在添加配置信息
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<appSettings>
<add key="MaxNum" value="10000"/>
</appSettings>
</configuration>
三、讀寫(xiě)App.config配置文件
右鍵項(xiàng)目的"引用",選擇"添加應(yīng)用",點(diǎn)擊彈窗的左上角"程序集",并在右邊搜索框輸入"System.Configuration",選擇"System.Configuration"并確定。
在類中引用命名空間,using System.Configuration;
1.讀取
string maxNumStr= ConfigurationManager.AppSettings["MaxNum"];
2.修改
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); cfa.AppSettings.Settings["MaxNum"].Value = '20000'; cfa.Save(ConfigurationSaveMode.Modified);
注:不管在Debug和實(shí)際運(yùn)行中,其實(shí)修改的并不是App.config文件,而是修改的xxx.exe.config文件。程序在實(shí)際運(yùn)行中不會(huì)使用App.config文件中的值,都是使用的xxx.exe.config文件。
四、.config和.exe.config和.vshost.exe.config后綴文件的區(qū)別
.vshost.exe.config是程序運(yùn)行時(shí)的配置文本(屬于臨時(shí)文件)
.exe.config是程序運(yùn)行后會(huì)復(fù)制到vshost.exe.config
.config是在編輯代碼時(shí)候存在的文件,當(dāng)右鍵項(xiàng)目"生成"的時(shí)候會(huì)在binDebug文件下生成.exe.config和.vshost.exe.config文件,后兩個(gè)文件的內(nèi)容都是從.config復(fù)制而來(lái)的
上述說(shuō)的修改配置文件,其實(shí)指的是修改.exe.config文件,而不是.config文件。
在程序運(yùn)行中,.vshost.exe.config和.config兩個(gè)文件可以不要,但是.exe.config必須要,因?yàn)槌绦蜃x寫(xiě)的都是這個(gè)文件。
五、配置文件中的連接字符串connectionStrings
1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 <startup> 4 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> 5 </startup> 6 7 <connectionStrings> 8 <!--第一種數(shù)據(jù)庫(kù)連接字符串--> 9 <add name="名稱1" connectionString="Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫(kù)名;User ID=用戶;Password=密碼" providerName="System.Data.SqlClient" /> 10 <!--第二種數(shù)據(jù)庫(kù)連接字符串--> 11 <add name="名稱2" connectionString="server=服務(wù)器名;database=數(shù)據(jù)庫(kù)名; Ueer ID=用戶;Password=密碼" providerName="System.Data.SqlClient" /> 12 </connectionStrings> 13 14 <appSettings> 15 <add key="MaxNum" value="10000"/> 16 </appSettings> 17 </configuration>
使用connectionStrings的好處:
第一:可將連接字符串加密,使用MS的一個(gè)加密工具即可
第二:可直接綁定的數(shù)據(jù)源控件,而不必寫(xiě)代碼讀出來(lái)再賦值給控件
第三:可方便的更換數(shù)據(jù)庫(kù)平臺(tái),如更換Oracle數(shù)據(jù)庫(kù),就需要修改providerName
獲取connectionStrings節(jié)點(diǎn)中的值:
string connectStr = ConfigurationManager.ConnectionStrings["名稱"];
總結(jié)
以上是生活随笔為你收集整理的C# 读写App.config配置文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 搜索重复代码_LeetCode专题——详
- 下一篇: ArcGIS Engine开发之量测功能