You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级EventHubs相关包后函数触发报错的原因与解决咨询

EventHubs函数升级后连接配置错误的原因及解决方法

一、低版本不报错的原因

旧版Microsoft.Azure.Functions.Worker.Extensions.EventHubs(4.3.0)依赖已弃用的Microsoft.Azure.EventHubs SDK,该SDK对连接配置的校验较为宽松:当连接字符串包含EntityPath且代码显式指定EventHubName时,SDK会自动优先使用代码中指定的名称,忽略连接字符串里的EntityPath,因此不会触发错误。

升级后的5.1.0版本基于新的Azure.Messaging.EventHubs SDK,这个SDK做了更严格的参数合法性校验,明确禁止同时通过连接字符串的EntityPath和代码显式参数两种方式指定Event Hub路径,因此抛出了参数错误。

二、解决方法

两种可行方案二选一即可:

方案1:移除连接字符串中的EntityPath

修改EventhubConnection配置值,删除末尾的;EntityPath=xxx部分。例如:

  • 原连接字符串:Endpoint=sb://xxx.servicebus.windows.net/;SharedAccessKeyName=xxx;SharedAccessKey=xxx;EntityPath=your-eventhub
  • 修改后:Endpoint=sb://xxx.servicebus.windows.net/;SharedAccessKeyName=xxx;SharedAccessKey=xxx

代码保持现有EventHubTrigger配置不变,依然显式指定EventhubName参数。

方案2:移除代码中显式指定的EventHubName

修改函数的EventHubTrigger属性,删除第一个参数(显式的Event Hub名称),保留连接字符串中的EntityPath。修改后的代码如下:

[FunctionName("FilterFunctionEventhubTrigger")]
public async Task Run(
        [EventHubTrigger(
        Connection = "EventhubConnection",
        ConsumerGroup = "%ConsumerGroup%")] EventData[] events, ILogger log)
{ ... }

内容的提问来源于stack exchange,提问作者yoyo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 12:53:16