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

.NET 6 Azure Function App部署报错:无法加载指定程序集

解决Azure Function App v4(.NET 6)发布后依赖加载失败问题

1. 修正依赖版本与绑定重定向

别再把包降级到3.1.0,v4运行时基于.NET 6,适配的是6.0.x版本的依赖。在项目的.csproj文件中添加或确认以下配置,强制运行时使用正确版本:

<PropertyGroup>
  <AzureFunctionsVersion>v4</AzureFunctionsVersion>
  <TargetFramework>net6.0</TargetFramework>
  <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
  <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
</PropertyGroup>

<ItemGroup>
  <PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="6.0.0" />
</ItemGroup>

2. 清理Azure部署残留文件

发布时旧依赖可能没被覆盖,手动清理站点文件:

  • 登录Azure门户,进入你的Function App,打开高级工具(Kudu)
  • 进入Debug console -> CMD,删除site\wwwroot下所有文件后重新发布

3. 二次核对运行时配置

确认Azure门户的Function App设置无偏差:

  • 进入配置 -> 常规设置,检查:
    • 运行时堆栈:.NET 6
    • 运行时版本:~4
    • 架构:和本地编译架构一致(x64/x86)

4. 排查第三方包依赖冲突

用NuGet包管理器控制台执行命令,查看是否有第三方包偷偷依赖3.1.0版本的Abstractions:

Get-Package -ProjectName 你的函数项目名称 | Select-Object Id, Version, Dependencies

找到冲突包后,要么更新该包到支持.NET 6的版本,要么通过<PackageReference>的ExcludeAssets排除旧版依赖。

5. 切换到隔离模式部署

若以上方法无效,改用隔离模式避免宿主环境依赖冲突:
在.csproj中修改配置:

<PropertyGroup>
  <AzureFunctionsVersion>v4</AzureFunctionsVersion>
  <TargetFramework>net6.0</TargetFramework>
  <OutputType>Exe</OutputType>
  <IsWorkerRuntime>true</IsWorkerRuntime>
</PropertyGroup>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 13:07:04