Azure Function App连接数据库失败:System.Data.SqlClient引用异常求助
解决Azure Function连接数据库时SqlConnection引用错误的方法
核心原因
你遇到的CS1069错误是因为Azure Functions不会自动集成System.Data.SqlClient或其替代包,必须手动添加对应的NuGet包引用。另外注意:System.Data.SqlClient已被微软标记为弃用,推荐使用Microsoft.Data.SqlClient作为后续维护版本。
解决步骤
情况1:使用Azure门户在线编辑器(.csx脚本函数)
- 进入你的Function App门户页面,打开目标函数的「代码+测试」界面
- 在文件列表右上角点击「添加」,创建名为
function.proj的文件 - 根据你选择的包,将以下内容粘贴到
function.proj中(注意替换TargetFramework为你的Function运行时版本,比如net6.0、net7.0):- 推荐使用
Microsoft.Data.SqlClient:<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>net6.0</TargetFramework> </PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.5" /> </ItemGroup> </Project> - 若坚持使用旧版
System.Data.SqlClient:<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>net6.0</TargetFramework> </PropertyGroup> <ItemGroup> <PackageReference Include="System.Data.SqlClient" Version="4.8.6" /> </ItemGroup> </Project>
- 推荐使用
- 保存
function.proj,回到Function App的「概述」页面,点击「重启」使包引用生效 - 在你的
.csx代码中更新命名空间引用:- 用
Microsoft.Data.SqlClient时:using Microsoft.Data.SqlClient; - 用旧版时:
using System.Data.SqlClient;
- 用
情况2:本地开发后部署(Visual Studio/VS Code)
- 打开你的Azure Functions项目
- 通过NuGet包管理器安装对应包:
- 搜索
Microsoft.Data.SqlClient并安装最新稳定版(推荐) - 或搜索
System.Data.SqlClient安装对应版本
- 搜索
- 确保代码中引用了正确的命名空间,然后重新部署到Azure即可
内容的提问来源于stack exchange,提问作者Arrow
相关产品推荐
相关产品推荐

