ASP.NET Web.Config 讀寫輔助類
using System; using System.Configuration; using System.Web; using System.Web.Configuration; namespace Whir.ezEIP { /// <summary> /// WebConfig讀寫輔助類 /// </summary> public class WebConfigManager : IDisposable { private Configuration _config; /// <summary> /// WebConfig讀寫輔助類 /// </summary> public WebConfigManager() : this(HttpContext.Current.Request.ApplicationPath) { } /// <summary> /// WebConfig讀寫輔助類 /// </summary> /// <param name="path"></param> public WebConfigManager(string path) { _config = WebConfigurationManager.OpenWebConfiguration(path); } #region IDisposable Members public void Dispose() { if (_config != null) { _config.Save(); } } #endregion /// <summary> /// 設置應用程序配置節點,如果已經存在此節點,則會修改該節點的值,否則添加此節點 /// </summary> /// <param name="key">節點名稱</param> /// <param name="value">節點值</param> public void SetAppSetting(string key, string value) { var appSetting = (AppSettingsSection)_config.GetSection("appSettings"); if (appSetting.Settings[key] == null) //如果不存在此節點,則添加 { appSetting.Settings.Add(key, value); } else //如果存在此節點,則修改 { appSetting.Settings[key].Value = value; } Save(); } /// <summary> /// 設置數據庫連接字符串節點,如果不存在此節點,則會添加此節點及對應的值,存在則修改 /// </summary> /// <param name="key">節點名稱</param> /// <param name="connectionString"> </param> public void SetConnectionString(string key, string connectionString) { var connectionSetting = (ConnectionStringsSection)_config.GetSection("connectionStrings"); if (connectionSetting.ConnectionStrings[key] == null) //如果不存在此節點,則添加 { var connectionStringSettings = new ConnectionStringSettings(key, connectionString); connectionSetting.ConnectionStrings.Add(connectionStringSettings); } else //如果存在此節點,則修改 { connectionSetting.ConnectionStrings[key].ConnectionString = connectionString; } Save(); } /// <summary> /// 保存所作的修改 /// </summary> public void Save() { _config.Save(); _config = null; } } }
使用方法:
var config = new WebConfigManager(); config.SetAppSetting("StrRegex", "");
讀取AppSetting和ConnectionString:
string fileType=ConfigurationManager.AppSettings["FileType "];
string connectionString = ConfigurationManager.ConnectionStrings["AspNetStudyConnectionString1"].ConnectionString;
最後更新:2017-04-03 08:26:25