asp.net 讀取並修改config檔實作程式碼

高洛峰
發布: 2016-12-24 13:11:51
原創
1292 人瀏覽過

為專案新增app.config檔: 

右鍵點選專案名稱,選擇“新增”→“新增新項目”,在出現的「新增項目」對話方塊中,選擇「新增應用程式設定檔」;如果專案以前沒有配置文件,則預設的文件名稱為“app.config”,按一下“確定”。出現在設計器視圖中的app.config檔為: 
 
 
 
在專案編譯後,在binDebuge檔下,將出現兩個設定檔(以本項目為例),一個名為“JxcManagement.EXE.config”,另一個名為“JxcManagement.vshost.exe.config”。第一個文件為專案實際使用的配置文件,在程式運行中所做的更改都將被保存於此;第二個文件為原始代碼“app.config”的同步文件,在程式運行中不會發生更改。
2. connectionStrings設定檔: 
請注意:如果您的SQL版本為2005 Express版,則預設安裝時SQL伺服器實例名為localhostSQLExpress,須變更下列實例中「Data Source=localhost;」一句為「Data Source= localhostSQLExpress;”,在等於號的兩邊不要加上空格。
 

<connectionStrings> 
<clear /> 
<addname="conJxcBook" 
connectionString="Data Source=localhost;Initial Catalog=jxcbook;User ID=sa;password=********" 
providerName="System.Data.SqlClient" /> 
</connectionStrings>
登入後複製

appSettings設定節: 
appSettings設定節為整個程式的配置,如果是對目前使用者的配置,請使用userSettings設定節,其格式與下列設定書寫需求一樣。
 

<appSettings> 
<clear /> 
<addkey="userName"value="" /> 
<addkey="password"value="" /> 
<addkey="Department"value="" /> 
<addkey="returnValue"value="" /> 
<addkey="pwdPattern"value="" /> 
<addkey="userPattern"value="" /> 
</appSettings>
登入後複製

4.讀取與更新app.config 
對於app.config檔的讀寫,參考了網路文章:http://www. codeproject.com/csharp/ SystemConfiguration.asp標題為「Read/Write App.Config File with .NET 2.0」一文。 
請注意:要使用以下的程式碼存取app.config文件,除新增引用System.Configuration外,還必須在專案中新增對System.Configuration.dll的引用。
4.1 讀取connectionStrings設定節 

///<summary> 
///依据连接串名字connectionName返回数据连接字符串 
///</summary> 
///<param name="connectionName"></param> 
///<returns></returns> 
private static string GetConnectionStringsConfig(string connectionName) 
{ 
string connectionString = 
ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString(); 
Console.WriteLine(connectionString); 
return connectionString; 
}
登入後複製

4.2 更新connectionStrings設定節 

///<summary> 
///更新连接字符串 
///</summary> 
///<param name="newName">连接字符串名称</param> 
///<param name="newConString">连接字符串内容</param> 
///<param name="newProviderName">数据提供程序名称</param> 
private static void UpdateConnectionStringsConfig(string newName, 
string newConString, 
string newProviderName) 
{ 
bool isModified = false; //记录该连接串是否已经存在 
//如果要更改的连接串已经存在 
if (ConfigurationManager.ConnectionStrings[newName] != null) 
{ 
isModified = true; 
} 
//新建一个连接字符串实例 
ConnectionStringSettings mySettings = 
new ConnectionStringSettings(newName, newConString, newProviderName); 
// 打开可执行的配置文件*.exe.config 
Configuration config = 
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
// 如果连接串已存在,首先删除它 
if (isModified) 
{ 
config.ConnectionStrings.ConnectionStrings.Remove(newName); 
} 
// 将新的连接串添加到配置文件中. 
config.ConnectionStrings.ConnectionStrings.Add(mySettings); 
// 保存对配置文件所作的更改 
config.Save(ConfigurationSaveMode.Modified); 
// 强制重新载入配置文件的ConnectionStrings配置节 
ConfigurationManager.RefreshSection("ConnectionStrings"); 
}
登入後複製

4.3 讀取appStrings設定節 

ree
///<summary> 
///返回*.exe.config文件中appSettings配置节的value项 
///</summary> 
///<param name="strKey"></param> 
///<returns></returns> 
private static string GetAppConfig(string strKey) 
{ 
foreach (string key in ConfigurationManager.AppSettings) 
{ 
if (key == strKey) 
{ 
return ConfigurationManager.AppSettings[strKey]; 
} 
} 
return null; 
}
登入後複製

4.4connectionStringsaged config檔實現代碼相關文章請關注PHP中文網!


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板