Azure functions local.settings.json represented in appsettings.json for a ServiceBusTrigger

asked7 years ago
last updated6 years ago
viewed50.8k times
Up Vote11Down Vote

I currently have an azure function using the ServiceBusTrigger binding

[ServiceBusTrigger("%TopicName%", "%SubscripionName%", Connection = "MyConnection")]
         string  catclogueEventMsgs, ILogger log, ExecutionContext context)

which uses this local.settings.json file

"Values": {
             …
    "MyConnection": "Endpoint=sb://testxxxxxxxxxxxxxxxxxx
    "SubscriptionName": "testsubscriptionName"
    "TopicName": "testtopicName",
  }

How do I represent this in the appsettings.json file. Will it be like the below?

"Values": {
    "MyConnection": "Endpoint=sb://testxxxxxxxxxxxxxxxxxx
    "SubscriptionName": "testsubscriptionName"
    "TopicName": "testtopicName",
  }

Instead of using a “Values” object can I use eg “MySubs” object like the below?

"MySubs": {
    "MyConnection": "Endpoint=sb://testxxxxxxxxxxxxxxxxxx
    "SubscriptionName": "testsubscriptionName"
    "TopicName": "testtopicName",
  }

If its possible to use the above settings, how do I represent this in the ServiceBusTrigger binding? would i change it to this?

[ServiceBusTrigger("%MySubs.TopicName%", "%MySubs.SubscripionName%", Connection = "MySubs.MyConnection")]
         string  catclogueEventMsgs, ILogger log, ExecutionContext context)