从配置文件而不是在 EventHubTrigger 中设置 eventhub 的名称

Set name of eventhub from config file instead of in EventHubTrigger

我有一个 Azure Webjob 需要从 Azure EventHub 读取并将输出写入另一个 EventHub。

在我见过的所有示例中,事件中心的名称都是在编译时直接在触发器属性中指定的。但是,我想根据我的配置文件中的值使用不同的名称(例如,我可以在生产和测试中以不同的方式命名我的事件中心)。可能吗?

现在我的代码看起来像这样,正如您所看到的名称 "xxx" 和 "yyy" 是编译时常量。

public void ProcessQueueMessage(
        [EventHubTrigger("xxx")]EventData[] msgs,
        [EventHub("yyy")]ICollector<EnrichedTrackingEvent> result,
        TraceWriter log)
{
    //...
}

定义名称解析器并在 JobHostConfiguration 中指定它,如 this answer 中所述。