У меня есть функция Azure, которая публикует некоторые сообщения в служебную шину, объявленную следующим образом:
[FunctionName(FunctionNames.PublishMessages)]
public async Task PublishMessages(
[ActivityTrigger] IEnumerable<Foo> messages,
[ServiceBus("TopicName", Connection = "ServiceBusConnectionString")] IAsyncCollector<string> collector,
ILogger log)
{
foreach (var message in messages)
{
await collector.AddAsync(JsonSerializer.Serialize(message));
}
await collector.FlushAsync();
}
Выходная привязка для служебной шины принимает имя раздела и имя ключа конфигурации, значение которого содержит строку подключения.
Вместо жесткого кодирования темы в сигнатуре метода я хотел бы получить ее из конфигурации функции точно так же, как я получаю строку подключения. Это возможно? Любая помощь высоко ценится.
Вы можете сделать это, сославшись на него, используя %. Так
[ServiceBus("%TopicNameSetting%", Connection = ...
и создайте настройку приложения с помощью ключа TopicNameSetting