web-dev-qa-db-ja.com

Azure Webアプリ設定で配列を使用する

私のASP.NET 5(RC1)コードには、次のようなappsetting.jsonがあります。

{
    "SomeSettings": {
        "PropA": "ValueA",
        "PropB": [
            "ValueB1",
            "ValueB2"
        ]
    }
}

これらの値は、私の開発マシン(つまり、localhost)でコードを実行するときに使用されます。 Azureのアプリケーション設定のwepアプリの「SomeSettings」を上書きしたい場合、「PropB」配列をどのように指定しますか?

情報を保存するSomeSettings.csクラスは次のようになります。

public class SomeSettings
{
    public string PropA { get; set; }
    public List<string> PropB { get; set; }
}

問題は「PropB」です。Azureで配列またはリストを文字列として指定するにはどうすればよいですか?これは可能ですか?

私のスタートアップクラスのコンストラクターで私は:

var builder = new ConfigurationBuilder()
    .AddJsonFile("appsettings.json")
    .AddEnvironmentVariables();

そして、私のStartupクラスのConfigureメソッドで私は持っています:

var someSettings = configuration.GetSection("SomeSettings").Get<SomeSettings>();

このように「アプリ設定」の下に設定を追加するとうまくいきます...以下の「:0」と「:1」に注意してください

フォーマット:キー->値

SomeSettings:PropA -> AzureValueA
SomeSettings:PropB:0 -> AzureValueB1
SomeSettings:PropB:1 -> AzureValueB2