3


0

複数のASP.NET構成ファイル

Web展開用に複数のASP.NET構成ファイルを使用することに関する多くの情報を見つけました。 しかし、達成したいことを達成できるかどうかはまだわかりません。

基本的に、作業中のWebサイトは3つの異なるサイトに展開できます。 展開先のサイトに応じて、構成設定を変更する必要があります。 私がしたいのは、可能な構成ごとに構成ファイル(完全なweb.configファイル)を持ち、特定の展開に使用する構成ファイルを展開ビルドに伝えることができるようにすることです(必要に応じて手動で編集できます)。

別の.configファイルを指すのと同じくらい簡単なものがありますか、それとももっと洗練された何かをする必要がありますか?

*編集:*特に心配しているのは、メール設定などのためにsystem.netの設定も必要なことです。 そのため、appSettingsをオーバーライドするだけではありません。

ありがとう

3 Answer


4


``などの構成セクションは、「外部化」することができます。 外部ファイルに保存されます。

``上の `file =`ステートメント以外(これはアプリの設定でのみ利用可能です:-()これは「追加の」設定ではありません-設定ファイルを外部ファイルに向けるだけです。

したがって、app.config / web.configにこれを含めることができます。


そしてこれは `smtp.test.config`で:


これは.NET 2.0(おそらく1.xでも)として機能し、すべての構成*セクション*で機能しますが、「*」のような構成*セクショングループ*では機能しません。

もちろん、 `smtp.staging.config`などの追加の構成ファイルを作成できるようになり、web.configの1行を置き換えるだけで問題が解決されました。

これは、インストールスクリプト、XMLプリプロセッサを使用して、または人間の介入によっても実行できます。

.NET 4およびweb.config変換として問題を完全に解決しません。 願っていますが、それは一歩であり、少し助けになります。


1


メインの web.config`で、次の属性を appSettings`に追加します


次に、asp.netは両方のファイルを1つのファイルとして認識します。 サイトに応じて、異なる外部ファイルを_include_するために `web.config`を編集できます。


0