.NET5 Azure Durable Function项目报IServiceCollection无AddPolicyHandler定义错误
报错解决方案
问题根源
你遇到的报错本质是依赖包版本不匹配导致扩展方法无法被正确识别:
项目目标框架为.NET 5.0,且已经引用了5.0.0版本的Microsoft.Extensions.DependencyInjection,但Microsoft.Extensions.Http、Microsoft.Extensions.Http.Polly两个依赖包还停留在3.1.0版本,跨大版本的依赖冲突导致AddPolicyHandler扩展方法无法被正确加载。
修复步骤
- 调整csproj文件中的包版本,将两个Http相关依赖包升级到和.NET 5匹配的5.0.0版本,修改后对应配置如下:
<PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Http.Polly" Version="5.0.0" />
- 清理项目:删除项目根目录下的
bin、obj文件夹,再重启VS重新生成项目,消除旧版本依赖的缓存残留。
修复完成后AddHttpClient()返回的IHttpClientBuilder类型就可以正常识别AddPolicyHandler扩展方法,报错会自动消失。
内容的提问来源于stack exchange,提问作者User3250
相关产品推荐
相关产品推荐

