public void Merge(SectionDataCollection sectionsToMerge) { foreach (var sectionDataToMerge in sectionsToMerge) { var sectionDataInThis = GetSectionData(sectionDataToMerge.SectionName); if (sectionDataInThis == null) { AddSection(sectionDataToMerge.SectionName); } this[sectionDataToMerge.SectionName].Merge(sectionDataToMerge.Keys); } }
/// <summary> /// Initializes a new IniData instance using a previous /// <see cref="SectionDataCollection"/>. /// </summary> /// <param name="sdc"> /// <see cref="SectionDataCollection"/> object containing the /// data with the sections of the file /// </param> public IniData(SectionDataCollection sdc) { _sections = (SectionDataCollection)sdc.Clone(); Global = new KeyDataCollection(); SectionKeySeparator = '.'; }
/// <summary> /// Initializes a new IniData instance using a previous /// <see cref="SectionDataCollection"/>. /// </summary> /// <param name="sdc"> /// <see cref="SectionDataCollection"/> object containing the /// data with the sections of the file /// </param> public IniDataCaseInsensitive(SectionDataCollection sdc) : base(new SectionDataCollection(sdc, StringComparer.OrdinalIgnoreCase)) { Global = new KeyDataCollection(StringComparer.OrdinalIgnoreCase); }