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

.NET Core 3.1 Azure函数用ADOMD.NET连接Power BI数据集报错如何解决

问题根因

你遇到的报错本质是.NET Core 3.1版本的Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64库依赖Windows Desktop运行时的内置API,但Azure Functions默认的运行时宿主只会加载Microsoft.NETCore.App框架,即使你本地系统已经安装了Windows Desktop运行时,函数进程也不会主动加载该框架的依赖,因此触发了平台不支持的校验报错。

可落地解决方案

  • 方案1:修改项目配置强制引入Windows Desktop运行时依赖
    右键你的Azure Functions项目,编辑.csproj工程文件,在顶层<PropertyGroup>节点中添加如下配置:
    <UseWindowsForms>true</UseWindowsForms>
    
    该配置会告知构建工具自动关联Windows Desktop运行时的相关依赖,无需额外安装其他组件,修改完成后重新生成项目即可解决本地运行报错问题。
    若后续需要部署到Azure云端,只需确保Function App使用Windows操作系统的托管计划即可,该配置在云端Windows环境下同样生效。
  • 方案2:升级ADOMD客户端包版本
    19.60.0及以上版本的Microsoft.AnalysisServices.AdomdClient.NetCore包已经移除了对Windows Desktop运行时的强制依赖,你可以直接替换现有的NuGet包到最新稳定版,无需修改项目运行时配置即可正常调用连接方法。
  • 方案3:切换Azure Functions运行时模型(可选)
    如果你使用的是.NET隔离进程模型的Azure Functions,除了按方案1修改csproj配置外,还需要确认项目的运行时启动配置没有禁用Windows桌面组件加载,默认配置下添加UseWindowsForms节点即可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 20:15:02