私のプロジェクト web.config でいくつかのカスタム構成セクションが定義されています。現在の web.config セットアップでは、これらは問題なく参照されます。値が環境 (DEV、QA、UAT、PROD) から変更されているため、appSettings エントリと共にこれらのカスタム構成セクションの一部を独自の .config ファイルに抽出しようとしています。
私が直面している問題は、カスタム構成セクションが同じファイルを指している場合、それぞれがルート要素がそのタイプであると期待していることです。以下は、試行された web.config セットアップのスニペットです。
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="custom1" type="Namespace.custom1, myProject"/>
<section name="custom2" type="Namespace.custom2, myProject"/>
</configSections>
<custom1 file="/Dev.config">
</custom1>
<custom2 file="/Dev.config">
</custom2>
<appSettings file="/Dev.config">
... non environment specific entries
</appSettings>
</configuration>
私の Dev.config ファイル内には、次のセクションがあります
<?xml version="1.0"?>
<custom1>
<customVal1 attr1="abc" attr2="xyz"/>
</custom1>
<custom2>
<diffCustomVal1 difAttr1="True" difAttr2="Jim"/>
</custom2>
<appSettings>
... environment specific entries
</appSettings>
オンラインで検索しましたが、気に入ったアイデアは見つかりませんでした。他の人がこの問題にどのようにアプローチしたのか疑問に思いました。また、別のカスタム構成セクションから単一の外部構成を作成して、上記のものをそのファイル内に配置しようとしましたが、プログラムはその構成ファイルから appSettings エントリを取得できませんでした。