/// <summary></summary> /// <param name="list"></param> /// <param name="node"></param> public static void SetKeyValues(NameValueConfigurationCollection list, YamlMappingNode node) { if (list == null) { throw new ArgumentNullException("list"); } foreach (var entry in node.Children) { bool isExist = false; NameValueConfigurationElement nameValue = new NameValueConfigurationElement(entry.Key.ToString(), entry.Value.ToString()); string[] keys = list.AllKeys; foreach (string key in keys) { if (nameValue.Name == key) { list[nameValue.Name].Value = nameValue.Value; isExist = true; break; } } if (!isExist) { list.Add(nameValue); } } }
/// <summary></summary> /// <param name="configGlobalPrefix"></param> /// <param name="list"></param> /// <param name="forceUpdate"></param> /// <returns></returns> public void AddKeyValues(string configGlobalPrefix, NameValueConfigurationCollection list, bool forceUpdate) { foreach (NameValueConfigurationElement item in list) { AddKeyValue(string.Format("{0}.{1}", configGlobalPrefix, item.Name), item.Value, forceUpdate); } }
/// <summary></summary> /// <param name="list"></param> /// <param name="nodes"></param> public static void SetKeyValues(NameValueConfigurationCollection list, XmlNodeList nodes) { if (list == null) { throw new ArgumentNullException("list"); } foreach (XmlNode node in nodes) { bool isExist = false; NameValueConfigurationElement nameValue = new NameValueConfigurationElement(node.Attributes["name"].Value, node.Attributes["value"].Value); string[] keys = list.AllKeys; foreach (string key in keys) { if (nameValue.Name == key) { list[nameValue.Name].Value = nameValue.Value; isExist = true; break; } } if (!isExist) { list.Add(nameValue); } } }
/// <summary>获取配置信息的值</summary> /// <param name="configGlobalPrefix">配置信息的全局前缀</param> /// <param name="propertyName">配置属性名称</param> /// <param name="defaultOptions">默认配置选项</param> /// <returns></returns> public string GetKeyValue(string configGlobalPrefix, string propertyName, NameValueConfigurationCollection defaultOptions) { string returnValue = null; // 属性全局名称 string propertyGlobalName = string.Format("{0}.{1}", configGlobalPrefix, propertyName); if (KernelConfigurationView.Instance.Configuration.Keys[propertyGlobalName] != null) { returnValue = KernelConfigurationView.Instance.ReplaceKeyValue(KernelConfigurationView.Instance.Configuration.Keys[propertyGlobalName].Value); } else if (defaultOptions[propertyName] != null) { returnValue = KernelConfigurationView.Instance.ReplaceKeyValue(defaultOptions[propertyName].Value); } return(returnValue); }