Мы знаем, что строку подключения для концентратора событий можно использовать из файла local.setting.json. Поэтому для одного и того же функционального приложения в разных средах я могу добавить параметр строки подключения концентратора событий в разделе «Настройки приложения» на портале Azure.
Поскольку приложение-функция EventHubTrigger также ожидает имя события и группу потребителей (необязательно) в качестве параметров атрибутов, мне было интересно, как можно использовать имя концентратора событий и группу потребителей из настроек приложения?
public static void EventHubTriggerFunc([EventHubTrigger("myeventhubname", Connection = "EventHubConnectionAppSetting", ConsumerGroup = "myconsumergroupname")] EventData myEventHubMessage, DateTime enqueuedTimeUtc, Int64 sequenceNumber, string offset, ILogger log)
{
// Here EventHubConnectionAppSetting is specified in local.setting.json file
//myeventhubname & myconsumergroupname are hard coded string
}
local.settings.Json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"EventHubConnectionAppSetting": "Endpoint=.....",
"EventHubConsumerGroup": "myconsumergroup"
}
}