asp.net代码中修改web.config节点的具体方法

但是这个变量不会一个固定的值,会根据实际情况而发生变化,比如在需要读取一个配置文件的路径,而这个路径是站点发布的实际硬盘路径,如果直接是编译时状态,没有问题。但是如果站点iis更换路径,就需要修改这个web.config中的参数。如果能将这个编译时状态修改为运行时状态,那将更为合理和方便。这就需要存在一种在代码中能够动态修改web.config的方案。
  代码
 

  /// <summary>
          /// 写入web.config
          /// </summary>
          /// <param name="item">appSettings等</param>
          /// <param name="key">键</param>
          /// <param name="value">值</param>
          public void WriteConfig(string item, string key, string value)
          {
              if (item == "")
             {
                 item = "appSettings";
             }
             Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.HttpContext.Current.Request.ApplicationPath);
             AppSettingsSection appSection = (AppSettingsSection)config.GetSection(item);
             if (appSection.Settings[key] == null)
             {
                 appSection.Settings.Add(key, value);
                 config.Save();
             }
             else
             {
                 appSection.Settings.Remove(key);
                 appSection.Settings.Add(key, value);
                 config.Save();
            }
         }