Пользовательский ConfigurationSection выбрасывает нераспознанный атрибут в web.config

Я перебираю и заменяю предыдущую стратегию конфигурации в приложении, чтобы она имела больше смысла, но она выдает исключение "нераспознанный атрибут" при загрузке приложения.

Вот мой раздел конфигурации

using System.Configuration;

namespace MyApplication
{
    public class MyConfigurationSection : ConfigurationSection
    {
        [ConfigurationProperty("defaultPageIndex", DefaultValue = 1)]
        [IntegerValidator(MinValue = 1)]
        public int DefaultPageIndex
        {
            get { return (int)this["defaultPageIndex"]; }
            set { this["defaultPageIndex"] = value; }
        }
    }
}

Вот web.config...

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <sectionGroup name="mySettingsGroup">
            <section name="mySettings" type="MyApplication.MyConfigurationSection" allowLocation="true" allowDefinition="Everywhere" />
        </sectionGroup>
    </configSections>
    <mySettingsGroup defaultPageIndex="1">
    </mySettingsGroup>
</configuration>

Ошибка Config Error Unrecognized attribute 'defaultPageIndex'

Config Source:
   27: 
   28:     <mySettingsGroup defaultPageIndex="1">
   29:     </mySettingsGroup>

Я уверен, что это что-то глупое, что я просто не вижу.

1 ответ

Решение

Как указал друг, раздел в группе не должен выглядеть так...

<mySettingsGroup defaultPageIndex="1">
</mySettingsGroup>

Но скорее так...

<mySettingsGroup >
    <mySettings defaultPageIndex="5"/>
</mySettingsGroup>
Другие вопросы по тегам