您的位置:首页 > 其它

WinForm 创建与读写配置文件

2012-02-08 16:47 309 查看
1. 创建 app.config 文件:
右击项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”;如果项目以前没有配置文件,则默认的文件名称为“app.config”,单击“确定”。





出现在设计器视图中的app.config文件为:

<?xml version="1.0" encoding="utf-8" ?>


<configuration>


</configuration>


 

 

2. 在配置文件中配置节点,本文以 connectionStrings 为例:

<?xml version="1.0" encoding="utf-8" ?>


<configuration>


<!--数据库连接字符串-->


<connectionStrings>


<add name="ConnectionToNorthwind" connectionString="Data Source=localhost;Initial Catalog=Northwind;UserID=sa;password=sa"


providerName="System.Data.SqlClient"/>


</connectionStrings>


</configuration>


 

 

3. 读取 connectionStrings 配置节:

要使用以下的代码访问 app.config 文件,除了 Useing System.Configuration 外,还必须在此项目添加对 System.Configuration.dll 的引用。

/// <summary>


/// 获取指定名称的数据库连接字符串


/// </summary>


/// <param name="connectionName">连接名</param>


/// <returns>连接字符串</returns>


private static string GetConnectionString(string connectionName)


{


return ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();


}


 

4. 更新 connectionStrings 配置节:

///<summary>


///更新连接字符串


///</summary>


///<param name="newName">连接字符串名称</param>


///<param name="newConString">连接字符串内容</param>


///<param name="newProviderName">数据提供程序名称</param>


private static void UpdateConnectionString(string newName, string newConString, string newProviderName)


{


// 将当前应用程序的配置文件作为 System.Configuration.Configuration 对象打开


Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);


 


// 存在此连接,则先删除


if (ConfigurationManager.ConnectionStrings[newName] != null)


{


config.ConnectionStrings.ConnectionStrings.Remove(newName);


}


 


// 新建一个连接字符串


ConnectionStringSettings newConStr = new ConnectionStringSettings(newName, newConString, newProviderName);


 


// 将新的连接字符串添加到配置文件中.


config.ConnectionStrings.ConnectionStrings.Add(newConStr);


 


// 保存对配置文件所作的更改


config.Save(ConfigurationSaveMode.Modified);


 


// 强制重新载入配置文件的ConnectionStrings配置节


ConfigurationManager.RefreshSection("ConnectionStrings");


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: