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

.NET Core 6 API部署IIS后加载System.Collections.Immutable组件失败求助

解决.NET Core 6 API部署IIS后Roslyn依赖加载错误

针对部署到IIS后出现的System.Collections.Immutable, Version=7.0.0.0加载错误,可尝试以下几种解决方案:

  • 显式引用兼容版本的依赖库
    在项目中添加System.Collections.Immutable的NuGet引用,选择与你的Roslyn包(4.0.x版本)兼容的6.0.x系列版本(匹配.NET Core 6的框架版本),避免引入7.0版本的依赖冲突。安装完成后重新发布部署。

  • 配置程序集绑定重定向
    在项目根目录创建runtimeconfig.template.json文件,添加绑定规则将高版本的依赖重定向到你实际引用的版本,示例配置如下:

    {
      "runtimeOptions": {
        "assemblyBinding": {
          "dependencies": [
            {
              "name": "System.Collections.Immutable",
              "publicKeyToken": "b03f5f7f11d50a3a",
              "redirects": [
                {
                  "from": "7.0.0.0",
                  "to": "6.0.0.0"
                }
              ]
            }
          ]
        }
      }
    }
    

    注意将to字段的版本号替换为你实际安装的System.Collections.Immutable版本。

  • 确保发布时依赖项完整复制
    在项目文件(.csproj)中添加以下配置,强制将所有NuGet依赖复制到输出目录:

    <PropertyGroup>
      <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    </PropertyGroup>
    

    同时检查发布配置,若使用框架依赖模式,确认依赖项未被遗漏;也可尝试切换为自包含部署模式重新发布。

  • 清理缓存并重新部署
    删除IIS站点对应发布目录下的所有文件,重新发布项目以避免旧依赖残留;重启IIS应用池,确保新的依赖项被正确加载。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 12:42:50