Пример #1
0
        public static void DeleteAppSetting(this System.Configuration.Configuration config, string key)
        {
            Contract.Requires <ArgumentNullException>(config != null, "config is null.");
            Contract.Requires <InvalidOperationException>(config.AppSettings != null, "config does not contain AppSettings.");
            Contract.Requires <InvalidOperationException>(!config.IsAppSettingsReadOnly(), "AppSettings is read-only.");
            Contract.Requires <InvalidOperationException>(!config.AppSettings.SectionInformation.IsLocked, "AppSettings section is locked.");
            Contract.Requires <ArgumentException>(!String.IsNullOrEmpty(key), "key is null or empty.");

            config.AppSettings.Settings.Remove(key);
            config.Save();
        }
Пример #2
0
        public static void WriteAppSetting(this System.Configuration.Configuration config, string key, string value)
        {
            Contract.Requires <ArgumentNullException>(config != null, "config is null.");
            Contract.Requires <InvalidOperationException>(config.AppSettings != null, "config does not contain AppSettings.");
            Contract.Requires <InvalidOperationException>(!config.IsAppSettingsReadOnly(), "AppSettings is read-only.");
            Contract.Requires <InvalidOperationException>(!config.AppSettings.SectionInformation.IsLocked, "AppSettings section is locked.");
            Contract.Requires <ArgumentException>(!String.IsNullOrEmpty(key), "key is null or empty.");
            Contract.Requires <ArgumentException>(!String.IsNullOrEmpty(value), "value is null or empty.");

            if (config.AppSettings.Settings.AllKeys.Contains(key))
            {
                config.AppSettings.Settings[key].Value = value;
            }
            else
            {
                config.AppSettings.Settings.Add(new KeyValueConfigurationElement(key, value));
            }

            config.Save();
        }