Подтвердить что ты не робот

Перенос настраиваемой группы конфигурации в отдельный файл

Недавно я написал довольно большую группу настраиваемых конфигураций. Мне любопытно, можно ли переместить эту конфигурацию в отдельный файл следующим образом:

<configuration>
    <configSections>
        <sectionGroup name="MyCustomGroup">
            <section name="MyCustomSection"/>
        </sectionGroup>
    </configSections>
    <MyCustomGroup file="alt.config" />
</configuration>

Это нечто похожее на то, что вы можете сделать с атрибутом файла для appSettings. Я понимаю, что, скорее всего, необходимо создать атрибут ConfigurationPropertyAttribute для моего обработчика пользовательских разделов, однако мне не удалось найти какой-либо пример или направление в этом отношении.

4b9b3361

Ответ 1

Насколько я знаю, вы не можете экрнализировать всю группу SectionGroup (т.е. MyCustomGroup) с помощью атрибута configSource, но вы должны обрабатывать это на уровне раздела (т.е. MyCustomSection)

<configuration>
    <configSections>
        <sectionGroup name="MyCustomGroup">
                <section name="MyCustomSection"/>
        </sectionGroup>
    </configSections>
    <MyCustomGroup>    
       <MyCustomSection configSource="externalfile.config" />
    </MyCustomGroup>
</configuration>

Внешний файл externalfile.config затем будет содержать ваши фактические настройки конфигурации, начиная напрямую с вашего собственного тега раздела (без ведущих <?xml....?> или <configuration> или чего-то еще):

<MyCustomSection>
    ... your settings here......
</MyCustomSection>

Марк