private void BuildProperties(ArchiveGeneratorConfiguration archiveGeneratorConfiguration) { var props = config.GetRegex(ConfigUtils.PropertySection); var keys = props .Select(n => n.Subsection) .Distinct(); foreach (var key in keys) { if (archiveGeneratorConfiguration.Properties.ContainsKey(key)) { archiveGeneratorConfiguration.Properties.Remove(key); } archiveGeneratorConfiguration.Properties.Add(key, new PropertyConfiguration() { Include = config.GetBoolean(ConfigUtils.PropertySection, key, "include") ?? true, TypeName = config.GetString(ConfigUtils.PropertySection, key, "typeName"), PropertyName = config.GetString(ConfigUtils.PropertySection, key, "propertyName") }); } }