2017-11-08 4 views
0

現在、.netコアのWebアプリケーションを構築しています。ただし、配備サーバー(Team Studio)でappsettings.jsonファイル内のDB接続文字列を置き換えることができないという問題があります。 Team Servicesが置き換えを行うことができるように、古いweb.config形式で接続文字列を入れてこの問題を解決することは可能ですか?私は1つを作成しようとしましたが、System.Configurationを使用して接続文字列にアクセスできません。.Net Core Web APIでweb.configファイルを使用する

+0

自分でXMLを解析できます。 – SLaks

+0

[.Net Coreアプリケーションのweb.configファイルの読み方](https://stackoverflow.com/questions/46996480/how-to-read-web-config-file-in-net-core-app) ) – Set

答えて

0

幸いにも、web.configが.netコアから削除されました。あなたがappsettings.json内の接続文字列を置き換えるパワーシェルスクリプトを作成し、team city agentを使用して呼び出すことをお勧めします。

3

方法appsettings.json仕事にを想定している、それが唯一の環境中立設定を含めるべきであるということです。特定の環境に固有のもの(接続文字列など)はappsettings.{Environment}.jsonに入ります。そのファイルは、展開先のサーバーに設定されているASPNETCORE_ENVIRONMENT環境変数に基づいてロードされます。つまり、何かを置き換える必要はありません。 appsettings.jsonappsettings.{Environment}.jsonの両方を展開し、ASPNETCORE_ENVIRONMENT変数が適切に設定されていることを確認してください。

+0

パスワードや機密データをソースリポジトリにチェックインする必要があります。置換はセキュリティの第2層を可能にするため、私はVSTSのリリースパイプラインでappsettings.jsonの代用を使用することを好みます。それはそこではうまくいくが、残念なことにこの場合は助けにならない。 – jcemoller

+0

これは外部化された設定プロバイダが出現する場所です。サーバー上の環境変数を使用して接続を設定するか、Azure Key Vaultのようなものを使用できます。 –

関連する問題