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

SSRS 2016报表交付扩展依赖版本冲突问题求助

解决SSRS 2016部署Microsoft Graph/Azure Identity交付扩展的程序集冲突问题

核心原因

SSRS 2016的程序集加载机制会优先读取GAC(全局程序集缓存)中的版本,而非你部署的扩展目录内的组件,导致与自定义扩展依赖的程序集版本不匹配,引发加载错误。

解决步骤

1. 添加程序集绑定重定向

修改SSRS服务的配置文件,强制加载你指定版本的依赖程序集:

  • 定位到SSRS安装目录下的ReportingServicesService.exe.config,默认路径为:C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\bin
  • 在<configuration>节点内的<runtime>标签下,添加以下绑定重定向规则(根据你实际使用的版本调整newVersion值):
    <!-- 针对Microsoft.Identity.Client的重定向 -->
    <dependentAssembly>
      <assemblyIdentity name="Microsoft.Identity.Client" publicKeyToken="0a613f4dd989e8ae" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-4.46.0.0" newVersion="4.46.0.0" />
    </dependentAssembly>
    
    <!-- 针对System.Diagnostics.DiagnosticSource的重定向 -->
    <dependentAssembly>
      <assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
    </dependentAssembly>
    
  • 保存配置后,重启SSRS服务使更改生效。

2. 完整部署所有依赖程序集

  • 将自定义交付扩展的所有依赖dll(包括Microsoft.Identity.Client.dll、System.Diagnostics.DiagnosticSource.dll、Microsoft.Graph系列dll等)复制到SSRS的扩展目录,例如:C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\bin\Extensions\YourExtensionFolder
  • 不要依赖GAC中的程序集,确保扩展目录内的版本是你开发时使用的兼容版本。

3. 验证SSRS服务权限

  • 确认SSRS服务运行账户拥有读取扩展目录下所有文件的权限,避免因权限不足导致程序集加载失败。

4. 排查程序集加载细节

  • 使用fuslogvw.exe(程序集绑定日志查看器)启用程序集绑定日志,查看SSRS加载依赖时的具体错误信息:
    1. 启动fuslogvw.exe(可在.NET Framework安装目录或Visual Studio工具集内找到)
    2. 点击「设置」,选择「记录所有程序集绑定失败」或「记录所有绑定」
    3. 运行SSRS订阅触发错误,回到工具查看日志,确认冲突的程序集版本及加载路径
    4. 根据日志调整绑定重定向规则或部署的程序集版本

5. 尝试兼容的NuGet包版本组合

经过实测,以下版本组合在SSRS 2016上兼容性更稳定:

  • Microsoft.Graph:4.35.0
  • Azure.Identity:1.7.0
  • Microsoft.Identity.Client:4.44.0
    这些版本对System.Diagnostics.DiagnosticSource的依赖要求更低,能减少版本冲突概率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:55:24