ConfigurationManager 在ASP.Net中怎么取 怎样取得Configuration并且我这个方法是在一个dll中的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 通用的Config操作类,适合B/S和C/S的using System;using System.Configuration;namespace Heaven.Pub{ /// <summary> /// 配置文件的类型 /// </summary> public enum ConfigType { /// <summary> /// 网站的配置文件 /// </summary> WebConfig=0, /// <summary> /// 应用程序的配置文件 /// </summary> AppConfig=1 } public class ConfigurationOperator { private Configuration config; private ConfigType configType; private string configPath; /// <summary> /// 配置文件 /// </summary> public Configuration Config { set { config = value; } get { return config; } } /// <summary> /// /// </summary> /// <param name="configType">配置文件类型</param> public ConfigurationOperator(ConfigType configType) { this.configType = configType; if (configType == ConfigType.WebConfig) { configPath = System.Web .HttpContext.Current.Request.ApplicationPath; } else { configPath = System.Windows .Forms .Application.ExecutablePath; } Initialize(); } /// <summary> /// /// </summary> /// <param name="configPath">配置文件路径</param> /// <param name="configType">配置文件类型</param> public ConfigurationOperator(string configPath, ConfigType configType) { this.configPath = configPath; this.configType = configType; Initialize(); } private void Initialize() { if (configType == ConfigType.AppConfig ) { config = System.Configuration .ConfigurationManager.OpenExeConfiguration(configPath); } else { config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(configPath); } } /// <summary> /// 增加appSetting /// </summary> /// <param name="key">appSetting的关键字</param> /// <param name="value">appSetting的值</param> public void AddAppSetting(string key, string value) { AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings"); if (appSetting.Settings[key] == null) { appSetting.Settings.Add(key, value); } else { ModifySetting(key, value); } } /// <summary> /// 修改appSetting /// </summary> /// <param name="key">appSetting的关键字</param> /// <param name="newValue">appSetting的新值</param> public void ModifySetting(string key, string newValue) { AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings"); if (appSetting.Settings[key] != null) { appSetting.Settings[key].Value = newValue; } else { AddAppSetting(key, newValue); } } /// <summary> /// 增加连接字符串 /// </summary> /// <param name="key">增加的关键字</param> /// <param name="connectString">增加的连接字符串</param> public void AddConnectString(string key, string connectString) { ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings"); if (connectionString.ConnectionStrings[key] == null) { ConnectionStringSettings connectionSetting=new ConnectionStringSettings (key,connectString ); connectionString.ConnectionStrings.Add(connectionSetting); } else { ModifySetting(key, connectString); } } /// <summary> /// 修改连接字符串 /// </summary> /// <param name="key">需要修改的关键字</param> /// <param name="newConnectString">新的连接字符串</param> public void ModifyConnectString(string key, string newConnectString) { ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings"); if (connectionString.ConnectionStrings[key] != null) { connectionString.ConnectionStrings[key].ConnectionString = newConnectString; } else { AddConnectString(key, newConnectString); } } /// <summary> /// 保存配置信息 /// </summary> public void SaveConfig() { config.Save(); } }} 帮忙看看这个项目如何实施 MSSQL2000连接数据库问题 SQL問題 请教一个变量个数名称自定义的问题 推荐几本关于C#的经典书籍,散分 winform项目:动态创建文本和圆 求学校成绩管理系统 C#中如何将一个类的属性封装成XML文件并反封装 我用wpf实现注册功能 为什么密码确认的时候 我只能取到一个密码框中的值 他们的名字不一样 如何编写高性能应用程序? 点击取消关闭窗口,如何让他不关闭,并且窗口内容(如筛选后的dataset)不变呢? InitializeComponent的问题
using System.Configuration;
namespace Heaven.Pub
{
/// <summary>
/// 配置文件的类型
/// </summary>
public enum ConfigType
{
/// <summary>
/// 网站的配置文件
/// </summary>
WebConfig=0,
/// <summary>
/// 应用程序的配置文件
/// </summary>
AppConfig=1
} public class ConfigurationOperator
{
private Configuration config;
private ConfigType configType;
private string configPath; /// <summary>
/// 配置文件
/// </summary>
public Configuration Config
{
set
{
config = value;
}
get
{
return config;
}
} /// <summary>
///
/// </summary>
/// <param name="configType">配置文件类型</param>
public ConfigurationOperator(ConfigType configType)
{
this.configType = configType;
if (configType == ConfigType.WebConfig)
{
configPath = System.Web .HttpContext.Current.Request.ApplicationPath;
}
else
{
configPath = System.Windows .Forms .Application.ExecutablePath;
}
Initialize();
} /// <summary>
///
/// </summary>
/// <param name="configPath">配置文件路径</param>
/// <param name="configType">配置文件类型</param>
public ConfigurationOperator(string configPath, ConfigType configType)
{
this.configPath = configPath;
this.configType = configType;
Initialize();
} private void Initialize()
{
if (configType == ConfigType.AppConfig )
{
config = System.Configuration .ConfigurationManager.OpenExeConfiguration(configPath);
}
else
{
config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(configPath);
}
} /// <summary>
/// 增加appSetting
/// </summary>
/// <param name="key">appSetting的关键字</param>
/// <param name="value">appSetting的值</param>
public void AddAppSetting(string key, string value)
{
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings[key] == null)
{
appSetting.Settings.Add(key, value);
}
else
{
ModifySetting(key, value);
}
} /// <summary>
/// 修改appSetting
/// </summary>
/// <param name="key">appSetting的关键字</param>
/// <param name="newValue">appSetting的新值</param>
public void ModifySetting(string key, string newValue)
{
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings[key] != null)
{
appSetting.Settings[key].Value = newValue;
}
else
{
AddAppSetting(key, newValue);
}
} /// <summary>
/// 增加连接字符串
/// </summary>
/// <param name="key">增加的关键字</param>
/// <param name="connectString">增加的连接字符串</param>
public void AddConnectString(string key, string connectString)
{
ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (connectionString.ConnectionStrings[key] == null)
{
ConnectionStringSettings connectionSetting=new ConnectionStringSettings (key,connectString );
connectionString.ConnectionStrings.Add(connectionSetting);
}
else
{
ModifySetting(key, connectString);
}
} /// <summary>
/// 修改连接字符串
/// </summary>
/// <param name="key">需要修改的关键字</param>
/// <param name="newConnectString">新的连接字符串</param>
public void ModifyConnectString(string key, string newConnectString)
{
ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (connectionString.ConnectionStrings[key] != null)
{
connectionString.ConnectionStrings[key].ConnectionString = newConnectString;
}
else
{
AddConnectString(key, newConnectString);
}
} /// <summary>
/// 保存配置信息
/// </summary>
public void SaveConfig()
{
config.Save();
}
}
}