ここに私のジレンマがあります。web.config ファイルがあります。各環境 (Lab1、Lab2 など、Alpha、Beta、Prod など) ごとに 1 つの FIFTEEN 変換ファイルがあります。これに 30 プロジェクトを掛けます。
30 のプロジェクトで 15 の変換ファイルを維持しようとするのではなく、次のようにします。
各変換ファイルを解析します。環境/構成/設定ごとに、解析されたファイルからのこのデータをデータベースに保存します。すべての環境固有の変換ファイルをマージした「マスター」変換ファイルを作成します (web.release.config に変換の大部分が含まれると仮定します)。目的の環境は、マスター変換ファイルを取得し、すべての設定 (つまり「値」) を DB からの環境/構成固有の値に置き換えます。
私が現在持っているもの: env/config/setting を DB に保存する ac# プログラム。作成および更新できます。上記を呼び出して、env/config/setting のセットを設定または取得する powershell プログラム。
必要なもの: 変換ファイルを解析し、各変換呼び出しを識別し、env/config/setting 値を DB に保存する方法。
次に、15 個の変換構成ファイルをマスター変換ファイルに「マージ」する最善の方法です。重複がないことを確認し、置き換える必要のある値を明確に示します。構成ファイルの他の場所では使用されていない角括弧を使用することは、これを行うための優れた方法であると考えていました。
add key="LabName" value=[[REPLACE ME]]
本番環境用に変換します
add key="LabName" value="Prod"
前もって感謝します。