using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
namespace Test
{
class ConfigHelper
{
#region ConnectionStrings
public static string GetConnectionStringsConfig(string connectionName)
{
try
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
return config.ConnectionStrings.ConnectionStrings[connectionName].ConnectionString;
//return ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();
}
catch
{
return "";
}
}
public 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");
}
#endregion
#region appSettings
public static string GetAppConfig(string strKey)
{
foreach (string key in ConfigurationManager.AppSettings)
{
if (key == strKey)
{
return ConfigurationManager.AppSettings[strKey];
}
}
return null;
}
public static void UpdateAppConfig(string newKey, string newValue)
{
bool isModified = false;
foreach (string key in ConfigurationManager.AppSettings)
{
if (key == newKey)
{
isModified = true;
break;
}
}
// Open App.Config of executable
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
// You need to remove the old settings object before you can replace it
if (isModified)
config.AppSettings.Settings.Remove(newKey);
// Add an Application Setting.
config.AppSettings.Settings.Add(newKey, newValue);
// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");
}
#endregion
}
}
https://www.cnblogs.com/qq450867541/p/7119433.html