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

Azure Function v3运行报错:无法加载System.Security.Cryptography.Pkcs程序集

问题根因

程序集加载异常的核心原因是版本不兼容:System.Security.Cryptography.Pkcs 6.0.0是面向.NET 6及更高版本设计的,你当前项目使用的.NET Core 3.1 + Azure Function v3运行环境无法适配该版本的程序集。

可落地解决方案

  • 方案1:降级Pkcs包版本(改动最小,无需调整整体项目框架)
    将.csproj文件中对应包的引用版本替换为适配.NET Core 3.1的5.0.1版本,修改节点如下:
    <PackageReference Include="System.Security.Cryptography.Pkcs" Version="5.0.1" />
    
    修改完成后删除项目的bin、obj文件夹,依次执行dotnet clean、dotnet restore命令重新还原依赖,再编译运行即可。
  • 方案2:升级项目运行环境(适合需要使用6.0+版本Pkcs特性的场景)
    同步升级Azure Function的运行时和框架版本:
    1. 把<TargetFramework>节点值改为net6.0
    2. 把<AzureFunctionsVersion>节点值改为v4
    3. 将所有Microsoft前缀的Nuget包升级到适配.NET 6的对应版本,重新编译部署即可。

异常排查补充

如果修改配置后仍然出现加载报错,可检查发布的部署包中是否存在System.Security.Cryptography.Pkcs.dll文件,部分场景下Azure Function部署会遗漏非核心依赖,你可以手动将该dll的「复制到输出目录」属性设置为「始终复制」,或者在发布时选择生成独立部署包,避免依赖缺失。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 17:06:00