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

Azure Function使用func start启动时报QueryableMethods类型初始化器异常

问题原因

你遇到的报错本质是版本不匹配导致的依赖冲突:你使用的azure-functions-core-tools@4.x和项目依赖的Functions v3 SDK(Microsoft.NET.Sdk.Functions 3.0.13)存在程序集版本差异,宿主加载EF Core程序集时出现重复方法匹配,触发了Sequence contains more than one matching element报错。Visual Studio启动时会自动调用和项目SDK匹配的v3版本运行时,因此运行无异常。

可行解决方案
  • 方案1:降级全局Azure Functions Core Tools到v3版本
    执行npm命令全局安装v3版本工具:npm install -g azure-functions-core-tools@3,安装完成后重新执行func start即可正常运行。
  • 方案2:升级函数应用到v4版本适配Core Tools v4
    修改FunctionApp.csproj配置:
    1. 将目标框架改为net6.0
    2. 升级Microsoft.NET.Sdk.Functions到4.2.0及以上版本
    3. 升级Microsoft.Azure.WebJobs.Extensions.ServiceBus到5.x兼容版本
      所有依赖版本对齐后重新构建项目,再执行func start即可。
  • 方案3:强制保留项目依赖版本不被宿主覆盖
    在FunctionApp.csproj的第一个PropertyGroup节点下添加配置:
    <FunctionsPreserveDependencies>true</FunctionsPreserveDependencies>
    
    该配置会禁止Azure Functions运行时用自带的程序集版本替换项目显式引用的版本,规避EF Core的程序集加载冲突,修改后重新构建执行即可。

内容的提问来源于stack exchange,提问作者Józef Podlecki

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 14:36:06