Есть несколько вопросов о чтении пользовательские файлы конфигурации, но ни один из них не обращается к пользовательским разделам конфигурации. Вот раздел из моего app.config:
<configuration>
<configSections>
<section name="DatabaseConfigSection" type="Bootstrapper.DatabaseConfig, Bootstrapper" />
</configSections>
<DatabaseConfigSection>
<Configuration>
<Databases>
<Database name="Database_Dev" environment="Dev"/>
<Database name="Database_RC" environment="RC"/>
<Database name="Database_Cloud" environment=""/>
</Databases>
</Configuration>
</DatabaseConfigSection>
</configuration>
И у меня есть собственный класс конфигурации, который позволяет мне кодировать его следующим образом:
DatabaseConfig.Instance.Configuration.Databases.Cast<Database>().Select(x => x.Name).ToArray();
Я хочу иметь еще один необязательный файл конфигурации с той же структурой, что и мой файл app.config выше, и я хочу использовать против него свой собственный класс конфигурации. Например, что-то вроде этого:
ConfigurationManager.Use("otherConfigFile.config");
var new dbConfig = ConfigurationManager.GetSection(SectionSectionName) as DatabaseConfig;
dbConfig.Databases.Cast<Database>().Select(x => x.Name).ToArray();
И пусть он возвращает данные из «otherConfigFile.config» в виде объекта DatabaseConfig
. Однако я не могу найти способ заставить ConfigurationManager.GetSection()
указывать на другой файл. Спасибо!