EventHubTrigger在Azure Functions中不起作用

时间:2019-07-19 12:39:12

标签: c# azure-functions azure-eventhub

我正在尝试构建简单的 azure函数v2 应用程序,该应用程序将包含两个函数,一个基于 TimerTrigger 触发,另一个将由触发EventHubTrigger 。我也有使用Startup.cs类的IoC容器配置。 TimerTrigger-工作正常,但EventHubTrigger遇到一些麻烦。 这是我的设置。 EventHubFunction:


namespace BgService
{
    public class MyFunctions
    {
        [FunctionName("MyFunction")]
        public async Task RunAsync([EventHubTrigger("myHubName", Connection = "hub")] string events, ILogger log)
        {

        }
    }
}

local.settings.json:

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "*****",

    "hub": "Endpoint=sb://***.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=***"
  }
}

我的Startup.cs:

[assembly: FunctionsStartup(typeof(BgService.Startup))]
namespace BgService
{
    public class Startup : FunctionsStartup
    {


        public override void Configure(IFunctionsHostBuilder builder)
        {
           // SomeConfiguration
        }
    }

当我运行azure函数项目时,出现下一个错误:

[19.07.2019 12:26:23] Microsoft.Azure.WebJobs.Host: Error indexing method 'MyFunction'. Microsoft.Azure.WebJobs.EventHubs: Value cannot be null.
[19.07.2019 12:26:23] Parameter name: receiverConnectionString.

使用的 Microsoft.NET.Sdk.Functions 版本-> 1.0.29

现在棘手的部分是: 当我将 Microsoft.NET.Sdk.Functions 的版本降级为1.0.25且未对代码进行任何修改时->它神奇地开始工作,但 Startup.Configure()不再调用该方法(在1.0.29版中它可以工作)。

感谢您的协助,花了一个小时来解决此问题。

1 个答案:

答案 0 :(得分:0)

也许这可以帮助https://github.com/Azure/Azure-Functions/issues/1299

您应将Microsoft.Azure.EventHubs软件包降级为3.0.0