Azure函数EventHubTriggerAttribute不使用local.settings.json中的事件中心名称

时间:2017-10-11 21:14:07

标签: azure azure-functions

我遇到的问题是我的EventHubTriggerAttribute不再使用我的local.settings.json文件来填充属性中的事件中心名称。这是我得到的错误:

enter image description here

在上述错误中,它正在寻找ddhubnamespace.servicebus.windows.net/eventhubname,它应该是ddhubnamespace.servicebus.windows.net/ddhub

这是TriggerAttribute中的事件中心名称:

public static void Run([EventHubTrigger("eventHubName", Connection = "eventHubConnection")]string data, TraceWriter log)

这是使用local.settings.json文件我必须从这里获取eventHubName:

{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_EXTENSION_VERSION": "~1",
    "eventHubConnection": "Endpoint=sb://ddhubnamespace.servicebus.windows.net/;...",
    "eventHubName": "ddhub",

如果在属性中我切换出" eventHubName"对于local.settings.json中的实际事件中心名称(" ddhub")。该功能将成功运行。将属性中的Connection属性设置为json名称也将从json中获取值。任何想法为什么我的eventhubname不再从json拉出来,而是把它作为文字字符串?

1 个答案:

答案 0 :(得分:5)

要从配置文件中获取值,您应在属性参数中使用%标记它:

[EventHubTrigger("%eventHubName%", Connection = "eventHubConnection")]