读取、添加、删除、修改配置文件 如(Web.config, App.config)

时间:2021-07-31 15:32:23
    private Configuration config;
public OperateConfig()
: this(HttpContext.Current.Request.ApplicationPath)
{
} public OperateConfig(string path)
{
config = WebConfigurationManager.OpenWebConfiguration(path);
} /// <summary>
/// 设置应用程序配置节点,如果已经存在此节点,则会修改该节点的值,否则添加此节点
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
public void SetAppSetting(string key, string value)
{
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings[key] == null)
{
appSetting.Settings.Add(key, value);
}
else
{
appSetting.Settings[key].Value = value;
}
} /// <summary>
/// 设置数据库连接字符串节点,如果不存在此节点,则会添加此节点及对应的值,存在则修改
/// </summary>
/// <param name="key"></param>
/// <param name="connectionString"></param>
public void SetConnectionString(string key, string connectionString)
{
ConnectionStringsSection connectionSetting = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (connectionSetting.ConnectionStrings[key] == null)//如果不存在此节点,则添加
{
ConnectionStringSettings connectionStringSettings = new ConnectionStringSettings(key, connectionString);
connectionSetting.ConnectionStrings.Add(connectionStringSettings);
}
else//如果存在此节点,则修改
{
connectionSetting.ConnectionStrings[key].ConnectionString = connectionString;
}
} /// <summary>
/// 保存所作的修改
/// </summary>
public void Save()
{
config.Save();
config = null;
} public void Dispose()
{
if (config != null)
{
config.Save();
}
}