.NET 4.8的Azure Functions v1部署后加载SqlConnection报错求助
Azure Functions v1 (.NET 4.8) 无法加载System.Data.SqlClient.SqlConnection的解决办法
针对你遇到的运行时错误,以下是几个可行的解决步骤:
添加程序集绑定重定向
在函数项目的web.config中添加绑定重定向配置,强制运行时使用部署包中的System.Data.SqlClient版本,避免从System.Data程序集加载错误类型:<configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Data.SqlClient" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-[你的包版本号]" newVersion="[你的包版本号]" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>注意替换
[你的包版本号]为项目中实际引用的System.Data.SqlClientNuGet包版本(比如4.8.5)。确认NuGet包的复制行为
右键项目中引用的System.Data.SqlClientNuGet包,将Copy Local属性设置为True,确保编译时该程序集被复制到输出目录,最终包含在部署包内。同时建议直接添加该包的引用,避免间接依赖导致的版本不一致。配置运行时程序集加载优先级
在项目根目录创建或修改host.json,添加以下配置让运行时优先从部署包的bin目录加载程序集:{ "assemblyLoader": { "privateBinPath": "bin" } }验证部署包内容
解压部署的zip包,检查bin目录下是否存在System.Data.SqlClient.dll,且版本与配置中的版本匹配。如果缺失,检查发布配置,确保发布过程中包含所有依赖项。
内容的提问来源于stack exchange,提问作者Walid Ouhadda
相关产品推荐
相关产品推荐

