2017-12-19 22 views
0

パラメータの配列、特に電子メール受信者のリストを取得し、これらをWebアプリケーションのアプリケーション設定に書き込もうとしています。パラメータ配列からAzureリソースマネージャテンプレートWebサイトのアプリケーション設定

次のテンプレートは機能しますが、明らかに、配列の最初と2番目の項目だけが書き込まれます。

私はコピー機能を研究しましたが、これはオブジェクトの作成を処理するように見えますが、既存のキー値ペアのリストに追加する必要があります。

{ 
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", 
    ... 
    "parameters": { 
    "Email:Recipients": { 
    "type": "array" 
    }, 
    ... 
    "resources": [ 
    { 
     "apiVersion": "2015-08-01", 
     "type": "Microsoft.Web/sites", 
     ... 
     "resources": [ 
     { 
      "apiVersion": "2015-08-01", 
      "name": "appsettings", 
      "type": "config", 
      "properties": { 
      ... 
      "Email:Recipients:0": "[parameters('Email:Recipients')[0]]", 
      "Email:Recipients:1": "[parameters('Email:Recipients')[1]]", 
      ... 
      } 
     } 
    ] 
} 

答えて

0

は、オブジェクトのプロパティの中にコピー機能を使用することができます - 参照:テンプレートが展開される前に、https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-multiple#property-iteration

は操作のコピー/ペーストタイプと考えます。

+0

コピー機能の使用方法がわかりません。 3つの議論が必要です。最初は名前です。名前は「貼り付け」プロパティの名前になります。しかし、私は新しい財産を望んでいません。私は既存の "プロパティ"プロパティに追加したいです。 3番目の引数はクラスです。しかし、私はクラスを望んでいません。キーの値のペアが必要です。 – Frodo

+0

あなたはそうだと思います。ここではうまくいかないと思います。配列からJSONのその他のBLOBに変換しようとしています。テンプレート言語で、プロパティ名が確定的ではないため、ネストされたデプロイメントでも可能なのかどうかはわかりません。 1つのオプションは、プロパティオブジェクト全体をパラメータとして渡し、テンプレートの外で "数学"を行うことです。 –

関連する問題