用程序修改配置文件

以前因爲上線驗證須要各類修改配置,須要運維同事處理,太麻煩,今天用程序處理了修改配置文件,一勞永逸,小記下:web

        [HttpPost]
        public ActionResult SaveSetting(string key, string value)
        {
            if (!string.IsNullOrWhiteSpace(key) && !string.IsNullOrWhiteSpace(value)
                && ConfigurationManager.AppSettings.AllKeys.Contains(key))
            {
                //ConfigurationManager.AppSettings.Set(key, value);                
                
                //var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);  //winform之類應用程序的修改方式

                var config = WebConfigurationManager.OpenWebConfiguration("~");  //web應用程序修改

                config.AppSettings.Settings[key].Value = value;
                config.Save();
            }

            return RedirectToAction("Index");
        }

以上爲Web應用中修改的方式,若是是winform、wpf之類使用 「緩存

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

」便可。運維

使用「spa

ConfigurationManager.AppSettings.Set(key, value);  

」只會更改在緩存中,不會將修改應用到配置文件,應用在重啓以後修改將失效。code

相關文章
相關標籤/搜索