既存の設定値を上書きせずに、既存のアプリケーションの app.config ファイルを更新して新しいアプリ設定を含めるためのベスト プラクティスを理解しようとしています。
最初から、Visual Studio セットアップ プロジェクトによって MSI に組み込まれるプロジェクトがあり、その MSI を使用してアプリケーションをインストールします。このアプリケーションは、おそらく 1000 以上の場所に既にインストールされています。現在、新しいバージョンのアプリケーションには、Web サービス エンドポイントを定義するための新しいアプリ設定があります。ただし、セットアップ プロジェクトは新しい設定で新しい app.config をデプロイしません。セットアップ プロジェクトはそのような馬鹿げたものであり、app.config がまだ存在しない場合、または既存の設定がある場合にのみインストールするためです。ユーザー定義の構成を上書きしないように、作成日と変更日を一致させます。
app.config を上書きできないので、app.config の変更を別の XML ファイルとして展開し、アプリケーションの起動時にこの別の XML ファイルをロードして、すべての設定をそれを実際の app.config ファイルの内容と比較し、不足しているものはすべて app.config ファイルに保存します。
しかし、外部 XML ファイルから構成を読み込んで app.config にコピーする際に問題が発生しています。どうすればこれを行うことができますか?app.config ファイルの更新を管理するための他の良い方法はありますか? ベストプラクティスとは?
私は Java の方がよく知っています。これは、プロパティ ファイルを使用する場合は非常に簡単ですが、.NET 構成ファイルを使用する場合はそれほど単純ではないようです。