!!!外部構成ファイル
{{category ".NET Framework",nolink}} 構成ファイル(app.config 等)のうち、単一のセクションを物理的に別のファイルに格納する。
外部構成ファイルは、メインの構成ファイルによって参照され、アプリケーション内で参照できる。
!!!外部構成ファイル参照
.Net Fw 2.0 以降で、メインの構成ファイルの対象セクションで、configSource 属性で参照(上書き)する外部ファイルを指定する。
参照される外部ファイルは、以下のように対象セクションの内容を記載する。
メインの構成ファイル側で、対象セクションの内容を記載するとエラーになる。
また、外部ファイルを暗号化しておくことも可能。ただし、コマンドが web.config を対象にしているため、暗号化/復号化をする際は加工して行う必要がある(ファイル名を web.config にする。ルート要素を configuration にする)。
暗号化の手順等は [[DotNet/EncryptConfiguration]] を参照
* 接続文字列と構成ファイル - ADO.NET | Microsoft Learn
** 外部構成ファイルを使用する
** https://learn.microsoft.com/ja-jp/dotnet/framework/data/adonet/connection-strings-and-configuration-files#use-external-configuration-files
!!!カスタム アプリケーション構成設定の外部構成ファイル
メインの構成ファイルの appSettings セクションで、file 属性で参照(マージ)する外部ファイルへの相対パスを指定する。
参照される外部ファイルは、以下のようにマージする appSettings セクションの内容を記載する。
外部ファイルの内容が追加される(appSettings の場合、後勝ちとなるため、同一キーは、外部ファイルの内容が有効になる)。
外部ファイルでも、add のほか remove, clear 要素も指定できる。
外部ファイルの指定は、メインの構成ファイルからの相対パスとなる。また、指定されたファイルが見つからない場合は、無視される。
* 要素 - .NET Framework | Microsoft Learn
** https://learn.microsoft.com/ja-jp/dotnet/framework/configure-apps/file-schema/appsettings/appsettings-element-for-configuration
* appSettings 要素 (全般設定スキーマ) | Microsoft Docs
** https://learn.microsoft.com/ja-jp/previous-versions/dotnet/netframework-4.0/ms228154(v=vs.100)