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

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

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

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

1 ответов


насколько я знаю, вы не может externalize всю секционную группу (т. е. MyCustomGroup) С помощью , но вы должны справиться с этим на уровне раздела (т. е. 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>

Марк