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

.NET 8 ASP.NET Core应用IIS运行报错:找不到指定编译库

解决IIS启动ASP.NET Core 8应用时找不到System.Security.Cryptography.Pkcs的问题

以下是几个经过验证的解决方案,按优先级尝试:

1. 确认项目构建与发布配置

  • 右键项目 → 打开属性,在生成标签下,确保目标框架为.NET 8,平台目标设为Any CPU或与当前系统匹配的架构(如x64)
  • 进入发布配置界面,确认部署模式为Framework-dependent(若使用独立部署,需确保打包时包含完整运行时组件)

2. 修复NuGet依赖引用

  • 打开NuGet包管理器,找到System.Security.Cryptography.Pkcs包,先卸载再重新安装
  • 在项目根目录执行命令:dotnet restore,确保所有依赖包正确恢复到本地

3. 调整IIS应用程序池设置

  • 打开IIS管理器,找到对应应用的程序池,设置**.NET CLR版本**为无托管代码(ASP.NET Core为自托管模式,无需IIS托管运行时)
  • 确认程序池的标识账户拥有项目输出目录的读写权限(推荐使用LocalSystem或具备权限的专用账户)

4. 修改项目文件强制复制依赖

  • 编辑项目的.csproj文件,添加以下配置,强制将所有锁定的程序集复制到输出目录:
<PropertyGroup>
  <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>
  • 保存文件后重新构建项目,再尝试用IIS配置启动

5. 清理缓存与输出目录

  • 关闭Visual Studio,删除项目下的bin和obj文件夹
  • 删除VS缓存目录:%USERPROFILE%\AppData\Local\Microsoft\VisualStudio\17.0_*\ComponentModelCache(17.0对应VS2022版本)
  • 重新打开VS并重新构建项目

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 03:42:06