私は人々のグループで Web アプリを開発していますが、データベースへの接続文字列はすべて異なります。
接続文字列は、ソース管理された web.config に保存されます。接続文字列を使用して web.config をチェックインする人がいて、環境が台無しになることがあります。
存在する場合、web.config の接続文字列をオーバーライドする環境変数を使用したいと考えています。どうやってやるの?
私は人々のグループで Web アプリを開発していますが、データベースへの接続文字列はすべて異なります。
接続文字列は、ソース管理された web.config に保存されます。接続文字列を使用して web.config をチェックインする人がいて、環境が台無しになることがあります。
存在する場合、web.config の接続文字列をオーバーライドする環境変数を使用したいと考えています。どうやってやるの?
他の人があなたのコメントで指摘しているように、ソース管理下にあるファイルを変更するのを止める簡単な方法はありません。ただし、できることは、web.configファイルを次のように変更することです。
<connectionStrings configSource="Configs\ConnectionStrings.config" > </connectionStrings>
次に、 Configsというフォルダーを作成し、そこに次のような内容のConnectionStrings.configという名前のファイルを作成します。
<connectionStrings>
<add name="YourVersionHere" ... />
</connectionStrings>
そうすれば、接続文字列を変更せずにweb.configファイルをチェックイン/チェックアウトできます (現在は別のファイルに保持されています)。もちろん、これはConnectionStrings.configファイルを上書きする可能性があるため、刑務所から抜け出すことはできませんが、構成を分割できるため、すべての設定を常に最新の状態に保つことができますが、決して GET を実行することはありません。ConnectionStrings.configファイル。
同じことが AppConfig などにも当てはまります。基本的に、構成をすべて 1 か所で管理するのではなく、小さなチャンクで管理できます。
詳細については、http : //msdn.microsoft.com/en-us/library/system.configuration.sectioninformation.configsource.aspxをご覧ください。
接続文字列をアプリケーション レベルの web.config からシステム レベルの machine.config ファイルに移動することはできますか?