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

Azure Function(.NET6)调用Kusto登录时遇程序集加载异常问题

解决Azure Function中Kusto登录的System.Diagnostics.DiagnosticSource缺失问题

问题原因

Azure Function的.NET6 v4运行时沙箱环境未包含System.Diagnostics.DiagnosticSource 8.0.0.0版本,而你使用的Microsoft.Azure.Kusto.Data 12.2.3依赖该版本;控制台程序的.NET运行时依赖解析机制更灵活,能自动兼容处理,因此可正常运行。

解决方案

1. 显式安装指定版本的依赖包

直接在项目中安装System.Diagnostics.DiagnosticSource 8.0.0版本,确保运行时能找到对应程序集:

  • 使用NuGet包管理器命令:
    Install-Package System.Diagnostics.DiagnosticSource -Version 8.0.0
    
  • 或手动编辑csproj文件添加引用:
    <PackageReference Include="System.Diagnostics.DiagnosticSource" Version="8.0.0" />
    

2. 强制复制所有依赖到输出目录

在Azure Function项目的csproj文件中添加以下配置,确保所有NuGet依赖的程序集被复制到输出目录,避免运行时加载失败:

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

3. 降级Kusto Data包版本(备选)

若安装指定版本的DiagnosticSource出现兼容性冲突,可尝试将Microsoft.Azure.Kusto.Data降级到11.x系列版本,该系列对DiagnosticSource的版本要求更低,更适配Azure Function的.NET6环境。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 13:12:02