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

.NET 4.8 Azure Function v4加载SqlParameter类型失败求助

解决方案参考

针对你遇到的Azure Function v4(.NET 4.8 + dotnet-isolated)部署后无法加载System.Data.SqlClient.SqlParameter的问题,以下是几个经过验证的解决方向:

  • 确认System.Data.SqlClient的引用与部署
    .NET Framework中,System.Data.SqlClient最初属于System.Data程序集,后来独立为NuGet包。若你的引用程序集使用了独立的System.Data.SqlClient NuGet包:

    • 确保引用程序集项目安装了兼容.NET 4.8的稳定版本(如4.8.3),且函数项目也间接或直接安装该包,保证部署时该程序集被打包进输出目录。
    • 检查部署包(可通过Kudu工具查看site/wwwroot)中是否存在System.Data.SqlClient.dll,版本需与本地一致。
  • 添加程序集绑定重定向
    在函数项目的App.config中添加绑定重定向配置,强制运行时使用正确的程序集版本:

    <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-4.8.3.0" newVersion="4.8.3.0" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    

    注意将newVersion替换为你实际安装的NuGet包版本,并确保该配置文件的“复制到输出目录”属性设置为“始终复制”。

  • 升级Microsoft.NET.Sdk.Functions版本
    你当前使用的1.0.24版本较旧,存在已知的兼容性问题。建议升级到兼容.NET 4.8的最新稳定版(如v4.x系列),新版本通常会修复程序集加载相关的bug。

  • 检查函数应用运行时配置
    确认函数应用的FUNCTIONS_EXTENSION_VERSION为~4,FUNCTIONS_WORKER_RUNTIME为dotnet-isolated无误后,尝试重启函数应用,确保部署的程序集被正确加载。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 20:52:17