C# 操作設定檔 App.config的詳解
using System;using System.Collections.Generic;using System.Text;using System.Configuration;namespace Schwann.CommLibrary{ public class ConfigHelper { /// <summary> /// 根據索引值擷取設定檔 /// </summary> /// <param name="key">索引值</param> /// <returns></returns> public static string GetConfig(string key) { string val = string.Empty; if (ConfigurationManager.AppSettings.AllKeys.Contains(key)) val = ConfigurationManager.AppSettings[key]; return val; } /// <summary> /// 擷取所有設定檔 /// </summary> /// <returns></returns> public static Dictionary<string, string> GetConfig() { Dictionary<string, string> dict = new Dictionary<string, string>(); foreach (string key in ConfigurationManager.AppSettings.AllKeys) dict.Add(key, ConfigurationManager.AppSettings[key]); return dict; } /// <summary> /// 根據索引值擷取設定檔 /// </summary> /// <param name="key">索引值</param> /// <param name="defaultValue">預設值</param> /// <returns></returns> public static string GetConfig(string key, string defaultValue) { string val = defaultValue; if (ConfigurationManager.AppSettings.AllKeys.Contains(key)) val = ConfigurationManager.AppSettings[key]; if (val == null) val = defaultValue; return val; } /// <summary> /// 寫設定檔,如果節點不存在則自動建立 /// </summary> /// <param name="key">索引值</param> /// <param name="value">值</param> /// <returns></returns> public static bool SetConfig(string key, string value) { try { Configuration conf = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); if (!conf.AppSettings.Settings.AllKeys.Contains(key)) conf.AppSettings.Settings.Add(key, value); else conf.AppSettings.Settings[key].Value = value; conf.Save(); return true; } catch { return false; } } /// <summary> /// 寫設定檔(用索引值建立),如果節點不存在則自動建立 /// </summary> /// <param name="dict">索引值集合</param> /// <returns></returns> public static bool SetConfig(Dictionary<string, string> dict) { try { if (dict == null || dict.Count == 0) return false; Configuration conf = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); foreach (string key in dict.Keys) { if (!conf.AppSettings.Settings.AllKeys.Contains(key)) conf.AppSettings.Settings.Add(key, dict[key]); else conf.AppSettings.Settings[key].Value = dict[key]; } conf.Save(); return true; } catch { return false; } } }}
上一篇學習了設定檔讀取的處理方式,但是沒有對經常用到的 <appSettings>進行學習,其實這些參數的讀取要簡單得多:
假設有如下配置參數
<appSettings> <add key="address" value="China"/> </appSettings>
讀取:
string address=System.Configuration.ConfigurationManager.AppSettings["address"].ToString();
事實就是這麼簡單
以上就是C# 操作設定檔 App.config的詳解的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!