| 
                         1. 向项目添加app.config文件:  右击项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”;如果项目以前没有配置文件,则默认的文件名称为“app.config”,单击“确定”。出现在设计器视图中的app.config文件为:  <?xmlversion="1.0"encoding="utf-8" ?>  <configuration>  </configuration>  在项目进行编译后,在binDebuge文件下,将出现两个配置文件(以本项目为例),一个名为“JxcManagement.EXE.config”,另一个名为“JxcManagement.vshost.exe.config”。第一个文件为项目实际使用的配置文件,在程序运行中所做的更改都将被保存于此;第二个文件为原代码“app.config”的同步文件,在程序运行中不会发生更改。  2. connectionStrings配置节:  请注意:如果您的SQL版本为2005 Express版,则默认安装时SQL服务器实例名为localhostSQLExpress,须更改以下实例中“Data Source=localhost;”一句为“Data Source=localhostSQLExpress;”,在等于号的两边不要加上空格。  <!--数据库连接串-->  复制代码 代码如下:  <connectionStrings>  <clear />  <addname="conJxcBook"  connectionString="Data Source=localhost;Initial Catalog=jxcbook;User ID=sa;password=********"  providerName="System.Data.SqlClient" />  </connectionStrings>    3. appSettings配置节:  appSettings配置节为整个程序的配置,如果是对当前用户的配置,请使用userSettings配置节,其格式与以下配置书写要求一样。  <!--进销存管理系统初始化需要的参数-->  复制代码 代码如下:  <appSettings>  <clear />  <addkey="userName"value="" />  <addkey="password"value="" />  <addkey="Department"value="" />  <addkey="returnValue"value="" />  <addkey="pwdPattern"value="" />  <addkey="userPattern"value="" />  </appSettings>    4.读取与更新app.config  对于app.config文件的读写,参照了网络文章:http://www.codeproject.com/csharp/ SystemConfiguration.asp标题为“Read/Write App.Config File with .NET 2.0”一文。  请注意:要使用以下的代码访问app.config文件,除添加引用System.Configuration外,还必须在项目添加对System.Configuration.dll的引用。  4.1 读取connectionStrings配置节  复制代码 代码如下:  ///<summary>  ///依据连接串名字connectionName返回数据连接字符串  ///</summary>  ///<param name="connectionName"></param>  ///<returns></returns>  private static string GetConnectionStringsConfig(string connectionName)  {  string connectionString =  ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();  Console.WriteLine(connectionString);  return connectionString;  }    4.2 更新connectionStrings配置节  复制代码 代码如下:  ///<summary>  ///更新连接字符串  ///</summary>  ///<param name="newName">连接字符串名称</param>  ///<param name="newConString">连接字符串内容</param>  ///<param name="newProviderName">数据提供程序名称</param>  private 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");  }    4.3 读取appStrings配置节  复制代码 代码如下:  ///<summary>  ///返回*.exe.config文件中appSettings配置节的value项  ///</summary>  ///<param name="strKey"></param>  ///<returns></returns>  private static string GetAppConfig(string strKey)  {  foreach (string key in ConfigurationManager.AppSettings)  {  if (key == strKey)  {  return ConfigurationManager.AppSettings[strKey];  }  }  return null;  }    4.4 更新connectionStrings配置节  复制代码 代码如下:  ///<summary>  ///在*.exe.config文件中appSettings配置节增加一对键、值对  ///</summary>  ///<param name="newKey"></param>  ///<param name="newValue"></param>  private 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");  }   
  复制代码 代码如下:  /// <summary>  /// 写入Key,Value 到XML文件  /// </summary>  /// <param name="Key"></param>  /// <param name="Value"></param>  public static void SaveConfig(string Key,string Value)  {  XmlDocument doc = new XmlDocument();  //获得配置文件的全路径  string strFileName = AppDomain.CurrentDomain.BaseDirectory.ToString() + "App.config";  doc.Load(strFileName);  //找出名称为“add”的所有元素  XmlNodeList nodes = doc.GetElementsByTagName("add");  for (int i = 0; i < nodes.Count; i++)  {  //获得将当前元素的key属性  XmlAttribute att = nodes[i].Attributes["key"];  //根据元素的第一个属性来判断当前的元素是不是目标元素  if (att.Value == Key)  {  //对目标元素中的第二个属性赋值  att = nodes[i].Attributes["value"]; 
  att.Value = Value;  break;  }  }  //保存上面的修改  doc.Save(strFileName); 
  } 
                          (编辑:莱芜站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |