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

.NET Core 3.1下Azure Function连接Azure SQL数据库报程序集加载错误

问题原因

你遇到的报错是依赖版本不匹配导致的:Microsoft.Data.SqlClient v4.0.0 依赖 System.Text.Encoding.CodePages 5.0.0.0 版本的程序集,.NET 5.0 框架默认内置了该版本的库,所以连接逻辑可以正常运行;但.NET Core 3.1 环境默认没有对应版本的依赖包,因此触发程序集加载失败的报错。
另外你的项目配置存在版本不匹配问题:Microsoft.NET.Sdk.Functions v4.0.1 对应 Azure Functions v4 运行时,原生适配的目标框架是 .NET 6,你当前用v4版本的Sdk搭配netcoreapp3.1的目标框架,也会加剧依赖冲突的概率。

解决方法

你可以选择以下任意一种方案处理:

  • 方案1:显式安装匹配的依赖包
    直接通过NuGet安装 System.Text.Encoding.CodePages 5.0.0 版本,不要安装更高版本,避免引入新的版本冲突。
  • 方案2:降级Microsoft.Data.SqlClient版本
    将Microsoft.Data.SqlClient的版本降级到3.1.x系列,该版本原生适配.NET Core 3.1,无需额外安装System.Text.Encoding.CodePages依赖。同时将Microsoft.NET.Sdk.Functions降级到3.x版本,和Azure Functions v3运行时、.NET Core 3.1目标框架匹配。
  • 方案3:升级运行时(推荐长期方案)
    .NET Core 3.1已经停止官方支持,你可以将项目目标框架升级到.NET 6(LTS版本),同时将AzureFunctionsVersion改为v4,适配现有的4.x版本Sdk,彻底解决依赖兼容问题。
验证步骤

修改依赖配置后,先清理解决方案,删除项目根目录下的bin、obj文件夹,再重新还原NuGet包后运行测试即可。

内容的提问来源于stack exchange,提问作者José Almeida

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 12:15:02