private IConfiguration GetChildNode(string nodeName, ConfigurationCollection configCollection) { return configCollection.FirstOrDefault(c => Eq(c.Name, nodeName)); }
/// <summary> /// Creates a new instance of <c>ConfigurationCollection</c>. /// </summary> public ConfigurationCollection(ConfigurationCollection value) { AddRange(value); }
private IConfiguration GetDeserializedNode(XmlNode node) { MutableConfiguration config; ConfigurationCollection configChilds = new ConfigurationCollection(); StringBuilder configValue = new StringBuilder(); if (node.HasChildNodes) { foreach(XmlNode child in node.ChildNodes) { if (IsTextNode(child)) { configValue.Append(child.Value); } else if (child.NodeType == XmlNodeType.Element) { configChilds.Add(GetDeserializedNode(child)); } } } config = new MutableConfiguration(node.Name, GetConfigValue(configValue.ToString())); foreach(XmlAttribute attribute in node.Attributes) { config.Attributes.Add(attribute.Name, attribute.Value); } config.Children.AddRange(configChilds); return config; }
/// <summary> /// Adds a <see cref="ConfigurationCollection"/>. /// </summary> /// <param name="value">The <see cref="ConfigurationCollection"/> to add.</param> public void AddRange(ConfigurationCollection value) { foreach(IConfiguration configuration in value) { Add(configuration); } }