Нераспознанная ошибка добавления элемента при чтении web.config
Когда я делаю это ConfigurationManager.GetSection("SectionA/sectionD")
Я получаю эту ошибку:
Нераспознанный элемент "добавить"
Я хотел бы прочитать все "добавить" элемент из этого раздела, чтобы создать коллекцию.
<configSections>
<sectionGroup name="SectionA">
<sectionGroup name="SectionB">
<section name="sectionC" type="MyProject.SectionC,MyProject" />
<section name="sectionD" type="MyProject.SectionD,MyProject" />
</sectionGroup>
<section name="sectionE" type="MyProject.SectionE,MyProject" />
</sectionGroup>
</configSections>
<SectionA>
<SectionB>
<sectionD>
<add key="PerPage10" value="10" />
<add key="PerPage30" value="30" />
<add key="PerPage60" value="60" />
</sectionD>
<sectionC attribute3="10" />
</SectionB>
<sectionE attribute1="3" attribute2="5" />
</SectionA>
1 ответ
Вот пример изменения кода коллекции элементов конфигурации:
private static ConfigurationProperty propIndicators = new ConfigurationProperty("indicators", typeof(ConfigurationElementCollection), null, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsDefaultCollection);
[ConfigurationProperty("indicators", IsRequired = true, IsDefaultCollection = true)]
[ConfigurationCollection(typeof(ReferencedConfigurationElementCollection), AddItemName = "add", ClearItemsName = "clear", RemoveItemName = "remove")]
public ConfigurationElementCollection Indicators
{
get
{
return (ConfigurationElementCollection)this[propIndicators];
}
set
{
this[propIndicators] = value;
}
}
Так в конфиге это выглядит следующим образом:
<indicators>
<add ... />
</indicators>