public class AppModify
{
/// <summary>
/// 依据连接串名字connectionName返回数据连接字符串
/// </summary>
/// <param name="connectionName"></param>
/// <returns></returns>
public static string GetConnectionStringsConfig(string connectionName)
{
string connectionString =
ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();
return connectionString;
}
/// <summary>
/// 更新连接字符串
/// </summary>
/// <param name="newName"> 连接字符串名称 </param>
/// <param name="newConString"> 连接字符串内容 </param>
/// <param name="newProviderName"> 数据提供程序名称 </param>
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");
} public static void UpdateConnectionStringsConfig(string newName,
string newConString)
{
bool isModified = false; // 记录该连接串是否已经存在
// 如果要更改的连接串已经存在
if (ConfigurationManager.ConnectionStrings[newName] != null)
{
isModified = true;
}
// 新建一个连接字符串实例
ConnectionStringSettings mySettings =
new ConnectionStringSettings(newName, newConString);
// 打开可执行的配置文件*.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");
}
/// <summary>
/// 返回*.exe.config文件中appSettings配置节的value项
/// </summary>
/// <param name="strKey"></param>
/// <returns></returns>
public static string GetAppConfig(string strKey)
{
foreach (string key in ConfigurationManager.AppSettings)
{
if (key == strKey)
{
return ConfigurationManager.AppSettings[strKey];
}
}
return null;
}
/// <summary>
/// 在*.exe.config文件中appSettings配置节增加一对键、值对
/// </summary>
/// <param name="newKey"></param>
/// <param name="newValue"></param>
public static void UpdateAppConfig(string newKey, string newValue)
{
bool isModified = false;
foreach (string key in ConfigurationManager.AppSettings)
{
if (key == newKey)
{
isModified = true;
}
} // 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");
}
}

最新文章

  1. BZOJ 1061: [Noi2008]志愿者招募
  2. 理解MVC,MVP和MVVM设计模式
  3. C++的友元类和友元函数实例
  4. 在Linux Ubuntu上编译DNX
  5. Language
  6. 《CSS 设计指南》学习笔记 一
  7. 和为S的两个数字VS和为s的连续正数序列
  8. Bootstrap 3 How-To #3 布局
  9. DM9000C网卡驱动程序移植
  10. cf435A Queue on Bus Stop
  11. Sql Server中charindex、patindex的区别
  12. javascript对象继承的实现
  13. ACM-计算几何之Quoit Design——hdu1007 zoj2107
  14. c# 内存的具体表现- 通用类型系统 深拷贝 浅拷贝 函数传参
  15. 初识JavaScript(一)
  16. mac下安装maven
  17. Luogu P3305 [SDOI2013]费用流 二分 网络流
  18. java8 Stream的实现原理 (从零开始实现一个stream流)
  19. 线程的简述Thread
  20. MySQL数据库-表内容操作

热门文章

  1. Junit初级篇
  2. DICOM中的入门概念
  3. Spring定时器注解配置
  4. MyEclipse中Ctrl+Shift+F快捷键格式化代码时不换行
  5. es6中的import,export浏览器已经支持
  6. [Functional Programming] Use Task/Async for Asynchronous Actions
  7. Android Service+Socket 联网交互
  8. UDP socket也可以使用connect系统调用
  9. hdu 2896 AC自动机模版题
  10. ssh 安装笔记